basic.php 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324
  1. <el-row>
  2. <el-col :span="24">
  3. <div class="form-body">
  4. <el-form :model="basicForm" ref="basicForm" :rules="basicFormRules" label-width="172px" style="position: relative" size="small">
  5. <el-form-item label="门店聚合页:">
  6. <el-input type="text" size="small" v-model="basicForm.o2o_url" :disabled="true">
  7. <el-button slot="append" @click="copyLink(basicForm.o2o_url)">复制链接</el-button>
  8. </el-input>
  9. </el-form-item>
  10. <!-- <el-form-item label="显示定位下城市门店">
  11. <template>
  12. <el-switch v-model="basicForm.is_show_location_store" :active-value="1" :inactive-value="0">
  13. </el-switch>
  14. </template>
  15. <div class="tips-text" >
  16. 开启后前端会员只可查看当前定位城市下的附近门店
  17. </div>
  18. </el-form-item> -->
  19. <el-form-item label="是否开启距离限制">
  20. <template>
  21. <el-switch v-model="basicForm.is_location_limit" :active-value="1" :inactive-value="0">
  22. </el-switch>
  23. </template>
  24. <div class="tips-text" >
  25. 开启后前端会根据用户的当前位置,自动展示附近N公里范围内的门店
  26. </div>
  27. </el-form-item>
  28. <el-form-item label="限制距离" v-if="basicForm.is_location_limit == 1">
  29. <template>
  30. <el-input size="small" v-model="basicForm.localtion_limit" style="width: 150px;" @input="formatLocaltion">
  31. <template slot="append">KM</template>
  32. </el-input>
  33. </template>
  34. </el-form-item>
  35. <div class="title">
  36. <span>门店设置</span>
  37. </div>
  38. <el-form-item label="商品审核" prop="goods_auth">
  39. <template>
  40. <el-radio v-model="basicForm.goods_auth" :label="0">关闭</el-radio>
  41. <el-radio v-model="basicForm.goods_auth" :label="1">开启</el-radio><br />
  42. </template>
  43. <div class="tips-text" >
  44. 开启后门店上传的所有商品均需要平台审核后才能上架
  45. </div>
  46. </el-form-item>
  47. <el-form-item label="收取服务费" prop="service_fee">
  48. <template>
  49. <el-radio v-model="basicForm.service_fee" :label="0">免服务费</el-radio>
  50. <el-radio v-model="basicForm.service_fee" :label="1">收取服务费</el-radio><br />
  51. </template>
  52. <div class="tips-text" >
  53. 如设置了服务费即门店每一笔订单都需要扣去平台收取的服务费后再进行结算
  54. </div>
  55. </el-form-item>
  56. <el-form-item label="服务费比例" v-if="basicForm.service_fee==1">
  57. <template>
  58. <el-radio v-model="basicForm.service_fee_type" :label="0" @change="handleChange">固定值</el-radio>
  59. <el-radio v-model="basicForm.service_fee_type" :label="1" @change="handleChange">区间比例
  60. </el-radio>
  61. </template>
  62. <div v-if="basicForm.service_fee_type == 0">
  63. <el-input size="small" v-model="basicForm.platform_ratio" style="width: 150px;"
  64. @input="changeHandle('platform_ratio')">
  65. <template slot="append">%</template>
  66. </el-input>
  67. <span style="color:#bdbdbd;margin-left: 20px;">门店交易平台收取服务费(手续费)</span>
  68. <div class="ti ps-text">
  69. 服务费比例设置
  70. </div>
  71. </div>
  72. <div v-if="basicForm.service_fee_type == 1">
  73. <el-input size="small" v-model="basicForm.min_platform_ratio" style="width: 200px;"
  74. onInput="value=toNumber(value,2)">
  75. @input="changeHandle('min_ratio')" placeholder="最小值">
  76. <template slot="append">%</template>
  77. </el-input>
  78. <span style="margin: 0 10px;">至</span>
  79. <el-input size="small" v-model="basicForm.max_platform_ratio" style="width: 200px;"
  80. onInput="value=toNumber(value,2)">
  81. @input="changeHandle('max_ratio')" placeholder="最大值">
  82. <template slot="append">%</template>
  83. </el-input>
  84. <span style="color:#bdbdbd;margin-left: 20px;">门店交易平台收取服务费(手续费)</span>
  85. <div class="tips-text">
  86. 服务费比例区间设置
  87. </div>
  88. </div>
  89. </el-form-item>
  90. <el-form-item label="服务费计算方式:" prop="service_fee_settle_type">
  91. <template>
  92. <el-select v-model="basicForm.service_fee_settle_type" placeholder="请选择服务费计算方式">
  93. <el-option :key="1" label="按订单实付金额计算" :value="1">按订单实际支付金额</el-option>
  94. <el-option :key="2" label="按商品售价计算" :value="2">按商品售价计算</el-option>
  95. <el-option :key="3" label="按商品成本价计算" :value="3">按商品成本价计算</el-option>
  96. </el-select>
  97. </template>
  98. </el-form-item>
  99. <el-form-item label="到账方式:" prop="settle_type">
  100. <template>
  101. <el-select v-model="basicForm.settle_type" placeholder="请选择到账方式">
  102. <el-option :key="1" label="门店商品售价(分佣平台承担)" :value="1">门店商品售价(分佣平台承担)</el-option>
  103. <el-option :key="2" label="订单实际支付金额(分佣平台承担)" :value="2">订单实际支付金额(分佣平台承担)</el-option>
  104. <el-option :key="3" label="商品成本+运费(不包含服务费)" :value="3">商品成本+运费(不包含服务费)</el-option>
  105. <el-option :key="4" label="订单实际支付减去(分销商提成、经销商提成、区域代理、推三返一)" :value="4">订单实际支付减去(分销商提成、经销商提成、区域代理、股东分红、二二复制、推三返一)</el-option>
  106. </el-select>
  107. </template>
  108. <div class="tips-text" >
  109. 门店结算计算方式
  110. </div>
  111. </el-form-item>
  112. <el-form-item label="结算风险控制" prop="risk_management">
  113. <el-switch v-model="basicForm.risk_management" :active-value="1" :inactive-value="0"> </el-switch>
  114. <div v-if="basicForm.risk_management==1">
  115. <span>货款结算低于售价</span>
  116. <el-input size="small" style="width: 150px;" v-model="basicForm.risk_management_ratio" @input="changeHandle('risk_management_ratio')">
  117. <template slot="append">%</template>
  118. </el-input>
  119. <span>商品自动下架</span>
  120. </div>
  121. <div class="tips-text" >
  122. 门店商品风控设置,如设置为110%,则商品的售价必须大于成本价的10%,否则自动下架
  123. </div>
  124. </el-form-item>
  125. <el-form-item prop="watch_times">
  126. <template slot='label'>
  127. <span>观看秒数</span>
  128. </template>
  129. <el-input size="small" style="width: 260px;" type="number" onInput="value=toNumber(value,2)" v-model="basicForm.watch_times" :min="1" autocomplete="off">
  130. <template slot="append">秒</template>
  131. </el-input>
  132. </el-form-item>
  133. <el-form-item prop="recommend_nums">
  134. <template slot='label'>
  135. <span>允许推荐商品数量</span>
  136. </template>
  137. <el-input size="small" style="width: 260px;" type="number" onInput="value=toNumber(value,2)" v-model="basicForm.recommend_nums" :min="1" autocomplete="off">
  138. </el-input>
  139. </el-form-item>
  140. <!-- <el-form-item label="结算方式:" prop="settle_scene">
  141. <template>
  142. <el-radio v-model="basicForm.settle_scene" :label="1">订单支付后</el-radio>
  143. <el-radio v-model="basicForm.settle_scene" :label="2">订单完成后</el-radio><br />
  144. </template>
  145. </el-form-item> -->
  146. <div class="title">
  147. <span>分佣/营销权限</span>
  148. </div>
  149. <el-form-item>
  150. <span style="color:#bdbdbd;position:relative;left:-106px;">开启以下分佣插件后,执行插件分佣门店全局设置,独立分佣请开启商品设置</span><br/>
  151. <span style="color:#bdbdbd;position:relative;left:-106px;">如开启,门店可独立设置插件分润(佣金门店承担下),否则按平台设置进行分润</span>
  152. </el-form-item>
  153. <div></div>
  154. <el-row>
  155. <el-col v-if="level!=0" :span="12">
  156. <el-form-item label="分销商" prop="store_distribution_status">
  157. <div style="display: flex; align-items: center; min-height: 32px;">
  158. <template v-if="basicForm.is_distribution_enable==1">
  159. <el-switch v-model="basicForm.store_distribution_status" :active-value="1" :inactive-value="0">
  160. </el-switch>
  161. <el-radio-group
  162. v-model="basicForm.store_distribution_fee_type"
  163. v-show="basicForm.store_distribution_status === 1"
  164. class="el-radio-group">
  165. <el-radio :label="1">默认
  166. <el-tooltip class="item" effect="dark"
  167. content="按照插件本身结算方式去计算分红"
  168. placement="top">
  169. <i class="el-icon-info"></i>
  170. </el-tooltip>
  171. </el-radio>
  172. <el-radio :label="2">门店服务费</el-radio>
  173. </el-radio-group>
  174. </template>
  175. <template v-else>
  176. <div>
  177. <el-tag type="info">分销应用未安装</el-tag>
  178. </div>
  179. </template>
  180. </div>
  181. </el-form-item>
  182. </el-col>
  183. <el-col :span="12">
  184. <el-form-item label="渠道分红" prop="store_agent_status">
  185. <template v-if="basicForm.is_agent_enable==1">
  186. <el-switch v-model="basicForm.store_agent_status" :active-value="1" :inactive-value="0">
  187. </el-switch>
  188. </template>
  189. <template v-else>
  190. <div>
  191. <el-tag type="info">渠道分红应用未安装</el-tag>
  192. </div>
  193. </template>
  194. </el-form-item>
  195. </el-col>
  196. </el-row>
  197. <el-row>
  198. <el-col :span="12">
  199. <el-form-item label="区域代理" prop="store_area_status">
  200. <div style="display: flex; align-items: center; min-height: 32px;">
  201. <template v-if="basicForm.is_area_enable==1">
  202. <el-switch
  203. v-model="basicForm.store_area_status"
  204. :active-value="1"
  205. :inactive-value="0"
  206. style="margin-right: 10px">
  207. </el-switch>
  208. <el-radio-group
  209. v-model="basicForm.store_area_fee_type"
  210. v-show="basicForm.store_area_status === 1"
  211. class="el-radio-group">
  212. <el-radio :label="1">默认
  213. <el-tooltip class="item" effect="dark"
  214. content="按照插件本身结算方式去计算分红"
  215. placement="top">
  216. <i class="el-icon-info"></i>
  217. </el-tooltip>
  218. </el-radio>
  219. <el-radio :label="2">门店服务费</el-radio>
  220. </el-radio-group>
  221. </template>
  222. <template v-else>
  223. <el-tag type="info">区域代理应用未安装</el-tag>
  224. </template>
  225. </div>
  226. </el-form-item>
  227. </el-col>
  228. <!-- <el-col :span="12">
  229. <el-form-item label="股东分红" prop="is_boss_enable">
  230. <el-switch v-model="basicForm.is_boss_enable" :active-value="1" :inactive-value="0">
  231. </el-switch>
  232. </el-form-item>
  233. </el-col> -->
  234. <el-col :span="12">
  235. <el-form-item label="二二复制" prop="double_copy_status">
  236. <template v-if="basicForm.is_double_copy_enable==1">
  237. <el-switch v-model="basicForm.double_copy_status" :active-value="1" :inactive-value="0">
  238. </el-switch>
  239. </template>
  240. <template v-else>
  241. <div>
  242. <el-tag type="info">二二复制应用未安装</el-tag>
  243. </div>
  244. </template>
  245. </el-form-item>
  246. </el-col>
  247. <el-col :span="12">
  248. <el-form-item label="推三返一" prop="store_rebate_status">
  249. <template v-if="basicForm.is_rebate_enable==1">
  250. <el-switch v-model="basicForm.store_rebate_status" :active-value="1" :inactive-value="0">
  251. </el-switch>
  252. </template>
  253. <template v-else>
  254. <div>
  255. <el-tag type="info">推三返一应用未安装</el-tag>
  256. </div>
  257. </template>
  258. </el-form-item>
  259. </el-col>
  260. </el-row>
  261. <div class="title">
  262. <span>平台地址</span>
  263. </div>
  264. <el-form-item label="地址:">
  265. <el-input size="small" v-model="basicForm.platform_address" >
  266. </el-input>
  267. </el-form-item>
  268. <div class="title">
  269. <span>云喇叭</span>
  270. </div>
  271. <el-form-item label="Host:">
  272. <el-input size="small" v-model="basicForm.suona_host" >
  273. </el-input>
  274. </el-form-item>
  275. <el-form-item label="appId:">
  276. <el-input size="small" v-model="basicForm.suona_appId" >
  277. </el-input>
  278. </el-form-item>
  279. <el-form-item label="appSecret:">
  280. <el-input size="small" v-model="basicForm.suona_appSecret" >
  281. </el-input>
  282. </el-form-item>
  283. <div class="title">
  284. <span>货款结算</span>
  285. </div>
  286. <template v-if="basicForm.payment_settle_info">
  287. <el-form-item label="订单结算" prop="payment_settle">
  288. <el-checkbox-group v-model="basicForm.payment_settle">
  289. <el-checkbox
  290. v-for="(item, key) in basicForm.payment_settle_info"
  291. :label="item.type"
  292. :key="key"
  293. >
  294. <div>
  295. <span v-if="item.type == 'settle_judge_yes'">确认收货且用户完成评价的订单,订单金额在T+</span>
  296. <span v-if="item.type == 'settle_judge_no'">确认收货但用户未评价的订单,在订单完成</span>
  297. <el-input style="margin-left: 10px;width: 200px;" v-model="item.value" placeholder="请输入整数" type="number">
  298. <template slot="append">天</template>
  299. </el-input>
  300. <span v-if="item.type == 'settle_judge_yes'">结算给下单店铺的店主(T是订单完成时间)</span>
  301. <span v-if="item.type == 'settle_judge_no'">后,订单金额自动结算给下单店铺的店主</span>
  302. </div>
  303. </el-checkbox>
  304. </el-checkbox-group>
  305. </el-form-item>
  306. </template>
  307. <el-form-item label="是否开启自定义符号" prop="is_enable_dollars_symbol" label-width="160px">
  308. <el-col :span="24">
  309. <el-switch v-model="basicForm.is_enable_dollars_symbol" :active-value="1" :inactive-value="0"></el-switch>
  310. <p style="color: #999">开启时前端所有带“¥”的符号显示变更为自定义名称</p>
  311. <div v-if="basicForm.is_enable_dollars_symbol == 1">
  312. <el-input style="width: 150px" v-model="basicForm.dollars_symbol" maxlength="10" show-word-limit></el-input>
  313. <p style="color: #999">可不填,设置参数为空时,前端显示空白。则不需要金钱符号</p>
  314. </div>
  315. </el-col>
  316. </el-form-item>
  317. </el-form>
  318. </div>
  319. </el-col>
  320. </el-row>
  321. <el-button :loading="submitLoading" class="button-item" size="small" type="primary" @click="submit('basicForm')">保存</el-button>
  322. <!-- 这个是复制用的容器,已隐藏 -->
  323. <textarea style="opacity: 0;width: 0;height: 0;" id="copy-container"></textarea>