dealerManage.html 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960
  1. <div ng-controller="dealerManageCtrl">
  2. <div class="" ng-class="{'wrapper-sm':condition.agentId==null}">
  3. <div class="panel panel-default m-b-sm">
  4. <div class="row wrapper-sm">
  5. <div class="col-sm-12">
  6. <div class="btn btn-info" ng-click="editDealer()"><i class="fa fa-edit"></i> 编辑</div>
  7. <div class="btn btn-info" ng-click="editPassword()"><i class="fa fa-key "></i> 修改密码</div>
  8. <div class="btn btn-success" ng-click="unfreeze()"><i class="fa fa-unlock "></i> 解除密码限制</div>
  9. <div class="btn btn-success" ng-click="unlockRegisterLimit()"><i class="fa fa-unlock "></i> 解除注册限制</div>
  10. <div class="btn-group dropdown" dropdown>
  11. <button class="btn btn-info dropdown-toggle" dropdown-toggle>
  12. <span class="dropdown-label fa fa-cog"> 配置</span>
  13. <span class="caret"></span>
  14. </button>
  15. <ul class="dropdown-menu">
  16. <li ng-click="editAdShow()">
  17. <a href><i class="fa fa-bullhorn text-danger-dk"> </i> 广告</a></li>
  18. <li class="divider"></li>
  19. <li ng-click="moniPointConfig()">
  20. <a href><i class="glyphicon glyphicon-qrcode text-success-dk"></i> 监督号广告位置</a></li>
  21. <li ng-click="forceFollowGzh()">
  22. <a href><i class="fa fa-weixin text-danger-dk"> </i> 强制关注公众号</a></li>
  23. <li ng-click="editSupporter()">
  24. <a href><i class="iconfont icon-service text-info-dk"> </i> 客服接管</a></li>
  25. <!--<li ng-click="openSaveBeforeCharge()">-->
  26. <!--<a href><i class="fa fa-money text-danger-dk"></i> 使用前充值</a></li>-->
  27. <li class="divider"></li>
  28. <li ng-click="editBankAccount()">
  29. <a href><i class="fa fa-credit-card text-danger-dk"> </i> 提现银行账户</a></li>
  30. <li ng-click="editCardFee()">
  31. <a href><i class="iconfont icon-sim-real text-danger-dk"> </i> 经销商流量费</a></li>
  32. <li ng-click="setDealerMaxPackagePrice()">
  33. <a href><i class="iconfont icon-dingdan text-info-dk"> </i> 经销最大套餐金额</a></li>
  34. <li class="divider"></li>
  35. <li ng-click="editApiShow()">
  36. <a href><i class="fa fa-bullhorn text-danger-dk"> </i> API应用</a></li>
  37. </ul>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. <div class="panel panel-default">
  43. <div class="row wrapper-sm">
  44. <div class="col-sm-12 form-inline">
  45. <!--强制关注查询-->
  46. <div class="btn-group dropdown" dropdown>
  47. <button class="btn btn-default dropdown-toggle" dropdown-toggle>
  48. <span class="dropdown-label">{{condition.forceFollowGzh.label}}</span>
  49. <span class="caret"></span>
  50. </button>
  51. <ul class="dropdown-menu">
  52. <li ng-repeat="item in enum.forceFollowGzh"
  53. ng-click="event.statusChange('forceFollowGzh',item)">
  54. <a href ng-bind="item.label"></a></li>
  55. </ul>
  56. </div>
  57. <!--广告状态查询-->
  58. <div class="btn-group dropdown" dropdown>
  59. <button class="btn btn-default dropdown-toggle" dropdown-toggle>
  60. <span class="dropdown-label">{{condition.adShow.label}}</span>
  61. <span class="caret"></span>
  62. </button>
  63. <ul class="dropdown-menu">
  64. <li ng-repeat="item in enum.adShow" ng-click="event.statusChange('adShow',item)">
  65. <a href ng-bind="item.label"></a></li>
  66. </ul>
  67. </div>
  68. <div class="input-group m-l-xs">
  69. <ui-select ng-model="condition.manager" theme="bootstrap" class=" inline v-middle"
  70. ng-keyup="event.managerInit($event)">
  71. <ui-select-match placeholder="厂商">{{$select.selected.nickname}}
  72. </ui-select-match>
  73. <ui-select-choices repeat="item in condition.managerList">
  74. <div ng-bind-html="item.nickname | highlight: $select.search"></div>
  75. <small ng-bind-html="item.username | highlight: $select.search"></small>
  76. </ui-select-choices>
  77. </ui-select>
  78. <span class="input-group-btn">
  79. <button ng-click="condition.manager = condition.managerDefault;" class="btn btn-default">
  80. <span class="glyphicon glyphicon-trash"></span>
  81. </button>
  82. </span>
  83. </div>
  84. <div class="input-group ">
  85. <!--代理商必须用搜索,因为太多了-->
  86. <ui-select ng-model="condition.agent" theme="bootstrap" class=" inline v-middle"
  87. ng-keyup="event.agentInit($event)">
  88. <ui-select-match placeholder="代理商">{{$select.selected.nickname}}
  89. </ui-select-match>
  90. <ui-select-choices repeat="item in condition.agentList">
  91. <div ng-bind-html="item.nickname | highlight: $select.search"></div>
  92. <small ng-bind-html="item.username | highlight: $select.search"></small>
  93. </ui-select-choices>
  94. </ui-select>
  95. <span class="input-group-btn">
  96. <button ng-click="condition.agent = condition.agentDefault;" class="btn btn-default">
  97. <span class="glyphicon glyphicon-trash"></span>
  98. </button>
  99. </span>
  100. </div>
  101. <!--设备数量范围-->
  102. <span class="v-middle m-l-xs"> 设备数量:</span>
  103. <div class="btn-group">
  104. <input type="text" class="form-control" style="width: 72px;padding: 5px;"
  105. ng-model="condition.devCountMin"
  106. placeholder="最小数量">
  107. </div>
  108. <span class="v-middle">-</span>
  109. <div class="btn-group ">
  110. <input type="text" class=" form-control" style="width: 72px;padding: 5px;"
  111. ng-model="condition.devCountMax"
  112. placeholder="最大数量">
  113. </div>
  114. <div class="input-group">
  115. <input type="text" class=" form-control" ng-model="condition.searchKey"
  116. ng-keydown="$event.keyCode==13&&event.search()"
  117. placeholder="商户名称、联系方式、详情等">
  118. <span class="input-group-btn">
  119. <div class="btn btn-default" ng-click="event.search()"><i class="fa fa-search"></i> 搜索</div>
  120. </span>
  121. </div>
  122. </div>
  123. </div>
  124. <div class="table-responsive">
  125. <div ui-grid="gridOptions" style="min-height:620px"
  126. ng-style="{'min-height':condition.agentId==null?620:540}" ui-grid-pagination
  127. ui-grid-selection></div>
  128. <div class="grid-mask" ng-if="gridOptionsLoading"><span>正在加载,请稍候...</span></div>
  129. </div>
  130. </div>
  131. <div id="merchantInfoPanel" class="form-horizontal form-validation modal fade" role="dialog"
  132. style="height: 800px">
  133. <div class="panel panel-default">
  134. <div class="panel-heading">
  135. <strong>{{infoDetail.title}}</strong>
  136. </div>
  137. <div class="panel-body">
  138. <div class="form-group">
  139. <label class="col-sm-3 control-label">商户类型</label>
  140. <div class="col-sm-6">
  141. <input type="text" value="{{findEnum(enum.merchantType,dialogData.merchantType).label}}"
  142. class="form-control">
  143. </div>
  144. </div>
  145. <div class="form-group">
  146. <label class="col-sm-3 control-label">商户状态</label>
  147. <div class="col-sm-6">
  148. <input type="text" value="{{findEnum(enum.merchantStatus, dialogData.status).label}}"
  149. class="form-control">
  150. </div>
  151. </div>
  152. <div class="form-group">
  153. <label class="col-sm-3 control-label">申请描述</label>
  154. <div class="col-sm-6">
  155. <input type="text" ng-model="dialogData.errorMsg"
  156. class="form-control">
  157. </div>
  158. </div>
  159. <div class="form-group">
  160. <label class="col-sm-3 control-label">商户账号</label>
  161. <div class="col-sm-6"><input type="text" ng-model="dialogData.regEmail" class="form-control">
  162. </div>
  163. </div>
  164. <div class="form-group">
  165. <label class="col-sm-3 control-label">京东商户号</label>
  166. <div class="col-sm-6"><input type="text" ng-model="dialogData.merchantNo" class="form-control">
  167. </div>
  168. </div>
  169. <div class="form-group">
  170. <label class="col-sm-3 control-label">微信子商编</label>
  171. <div class="col-sm-6"><input type="text" ng-model="dialogData.subMerchantId"
  172. class="form-control">
  173. </div>
  174. </div>
  175. <div class="form-group">
  176. <label class="col-sm-3 control-label">微信申请单号</label>
  177. <div class="col-sm-6"><input type="text" ng-model="dialogData.applymentId" class="form-control">
  178. </div>
  179. </div>
  180. <div class="form-group">
  181. <label class="col-sm-3 control-label">提交时间</label>
  182. <div class="col-sm-6"><input type="text" ng-model="dialogData.createdTime" class="form-control">
  183. </div>
  184. </div>
  185. <div class="form-group">
  186. <label class="col-sm-3 control-label">状态更新时间</label>
  187. <div class="col-sm-6"><input type="text" ng-model="dialogData.updateTime" class="form-control">
  188. </div>
  189. </div>
  190. <div class="form-group">
  191. <label class="col-sm-3 control-label">法人证件</label>
  192. <div class="col-sm-9">
  193. <a href="{{dialogData.certificate.legalInfo.urlA}}" target="_blank">
  194. <img ng-src="{{dialogData.certificate.legalInfo.urlA}}"
  195. style="width: 160px;height: 160px;object-fit: cover">
  196. </a>
  197. <a href="{{dialogData.certificate.legalInfo.urlA}}" target="_blank">
  198. <img ng-src="{{dialogData.certificate.legalInfo.urlB}}"
  199. style="width: 160px;height: 160px;object-fit: cover">
  200. </a>
  201. </div>
  202. </div>
  203. <div class="form-group">
  204. <label class="col-sm-3 control-label">法人姓名</label>
  205. <div class="col-sm-6">
  206. <input type="text" ng-model="dialogData.certificate.legalInfo.name" class="form-control">
  207. </div>
  208. </div>
  209. <div class="form-group">
  210. <label class="col-sm-3 control-label">地址信息</label>
  211. <div class="col-sm-6">
  212. <input type="text" ng-value="dialogData.certificate.legalInfo.province.name
  213. + ' ' + dialogData.certificate.legalInfo.city.name
  214. + ' ' + dialogData.certificate.legalInfo.area.name
  215. + ' ' + dialogData.certificate.legalInfo.addr" class="form-control">
  216. </div>
  217. </div>
  218. <div class="form-group">
  219. <label class="col-sm-3 control-label">有效期</label>
  220. <div class="col-sm-6">
  221. <input type="text"
  222. ng-value="dialogData.certificate.legalInfo.startTime + '至' +dialogData.certificate.legalInfo.endTime"
  223. class="form-control">
  224. </div>
  225. </div>
  226. <div class="form-group" ng-if="dialogData.certificate.contactInfo">
  227. <label class="col-sm-3 control-label">联系人证件</label>
  228. <div class="col-sm-9">
  229. <a href="{{dialogData.certificate.contactInfo.urlA}}" target="_blank">
  230. <img ng-src="{{dialogData.certificate.contactInfo.urlA}}"
  231. style="width: 160px;height: 160px;object-fit: cover">
  232. </a>
  233. <a href="{{dialogData.certificate.contactInfo.urlA}}" target="_blank">
  234. <img ng-src="{{dialogData.certificate.contactInfo.urlB}}"
  235. style="width: 160px;height: 160px;object-fit: cover">
  236. </a>
  237. </div>
  238. </div>
  239. <div class="form-group" ng-if="dialogData.certificate.contactInfo">
  240. <label class="col-sm-3 control-label">联系人姓名</label>
  241. <div class="col-sm-6">
  242. <input type="text" ng-model="dialogData.certificate.contactInfo.name" class="form-control">
  243. </div>
  244. </div>
  245. <div class="form-group" ng-if="dialogData.certificate.contactInfo">
  246. <label class="col-sm-3 control-label">地址信息</label>
  247. <div class="col-sm-6">
  248. <input type="text" ng-model="dialogData.certificate.contactInfo.province.name
  249. + ' ' + dialogData.certificate.contactInfo.city.name
  250. + ' ' + dialogData.certificate.contactInfo.area.name
  251. + ' ' + dialogData.certificate.contactInfo.addr" class="form-control">
  252. </div>
  253. </div>
  254. <div class="form-group" ng-if="dialogData.certificate.contactInfo">
  255. <label class="col-sm-3 control-label">有效期</label>
  256. <div class="col-sm-6">
  257. <input type="text"
  258. ng-model="dialogData.certificate.contactInfo.startTime + '至' +dialogData.certificate.contactInfo.endTime"
  259. class="form-control">
  260. </div>
  261. </div>
  262. <div class="form-group" ng-if="dialogData.certificate.subjectInfo">
  263. <label class="col-sm-3 control-label">营业执照信息</label>
  264. <div class="col-sm-9">
  265. <a href="{{dialogData.certificate.subjectInfo.businessLicenceInfo.busLicenseUrl}}"
  266. target="_blank">
  267. <img ng-src="{{dialogData.certificate.subjectInfo.businessLicenceInfo.busLicenseUrl}}"
  268. style="width: 160px;height: 160px;object-fit: cover">
  269. </a>
  270. </div>
  271. </div>
  272. <div class="form-group" ng-if="dialogData.certificate.subjectInfo">
  273. <label class="col-sm-3 control-label">公司名称</label>
  274. <div class="col-sm-6">
  275. <input type="text" ng-model="dialogData.certificate.subjectInfo.businessLicenceInfo.busName"
  276. class="form-control">
  277. </div>
  278. </div>
  279. <div class="form-group" ng-if="dialogData.certificate.subjectInfo">
  280. <label class="col-sm-3 control-label">统一社会信用码</label>
  281. <div class="col-sm-6">
  282. <input type="text" ng-model="dialogData.certificate.subjectInfo.businessLicenceInfo.busCode"
  283. class="form-control">
  284. </div>
  285. </div>
  286. <div class="form-group" ng-if="dialogData.certificate.subjectInfo">
  287. <label class="col-sm-3 control-label">地址信息</label>
  288. <div class="col-sm-6">
  289. <input type="text" ng-value="dialogData.certificate.subjectInfo.businessLicenceInfo.province.name
  290. + ' ' + dialogData.certificate.subjectInfo.businessLicenceInfo.city.name
  291. + ' ' + dialogData.certificate.subjectInfo.businessLicenceInfo.area.name
  292. + ' ' + dialogData.certificate.subjectInfo.businessLicenceInfo.addr" class="form-control">
  293. </div>
  294. </div>
  295. <div class="form-group" ng-if="dialogData.certificate.subjectInfo">
  296. <label class="col-sm-3 control-label">有效期</label>
  297. <div class="col-sm-6">
  298. <input type="text"
  299. ng-value="dialogData.certificate.subjectInfo.businessLicenceInfo.startTime + '至' +dialogData.certificate.subjectInfo.businessLicenceInfo.endTime"
  300. class="form-control">
  301. </div>
  302. </div>
  303. <div class="form-group">
  304. <label class="col-sm-3 control-label">银行卡</label>
  305. <div class="col-sm-9">
  306. <a href="{{dialogData.settle.bankCardImg}}" target="_blank">
  307. <img ng-src="{{dialogData.settle.bankCardImg}}"
  308. style="width: 160px;height: 160px;object-fit: cover">
  309. </a>
  310. </div>
  311. </div>
  312. <div class="form-group">
  313. <label class="col-sm-3 control-label">卡号</label>
  314. <div class="col-sm-6">
  315. <input type="text" ng-model="dialogData.settle.bankCardCode" class="form-control">
  316. </div>
  317. </div>
  318. <div class="form-group">
  319. <label class="col-sm-3 control-label">银行</label>
  320. <div class="col-sm-6">
  321. <input type="text" ng-model="dialogData.settle.bankName" class="form-control">
  322. </div>
  323. </div>
  324. <div class="form-group">
  325. <label class="col-sm-3 control-label">支行</label>
  326. <div class="col-sm-6">
  327. <input type="text"
  328. ng-value="dialogData.settle.bankCardSubName + ' ' + dialogData.settle.bankCardSubCode"
  329. class="form-control">
  330. </div>
  331. </div>
  332. <div class="form-group">
  333. <label class="col-sm-3 control-label">门店照</label>
  334. <div class="col-sm-9">
  335. <a href="{{dialogData.business.storeAUrl}}" target="_blank">
  336. <img ng-src="{{dialogData.business.storeAUrl}}"
  337. style="width: 160px;height: 160px;object-fit: cover">
  338. </a>
  339. <a href="{{dialogData.business.storeBUrl}}" target="_blank">
  340. <img ng-src="{{dialogData.business.storeBUrl}}"
  341. style="width: 160px;height: 160px;object-fit: cover">
  342. </a>
  343. <a href="{{dialogData.business.storeCUrl}}" target="_blank">
  344. <img ng-src="{{dialogData.business.storeCUrl}}"
  345. style="width: 160px;height: 160px;object-fit: cover">
  346. </a>
  347. </div>
  348. </div>
  349. <div class="form-group">
  350. <label class="col-sm-3 control-label">商户简称</label>
  351. <div class="col-sm-6">
  352. <input type="text" ng-model="dialogData.business.storeShotName" class="form-control">
  353. </div>
  354. </div>
  355. <div class="form-group">
  356. <label class="col-sm-3 control-label">地址信息</label>
  357. <div class="col-sm-6">
  358. <input type="text" ng-value="dialogData.business.province.name
  359. + ' ' + dialogData.business.city.name
  360. + ' ' + dialogData.business.area.name
  361. + ' ' + dialogData.business.addr" class="form-control">
  362. </div>
  363. </div>
  364. </div>
  365. </div>
  366. <footer class="panel-footer text-center bg-light lter">
  367. <button type="button" class="btn btn-info margin-5" ng-click="closeMerchantInfo()"
  368. style="margin-left: 8px"><i
  369. class="fa fa-close"></i> 关闭
  370. </button>
  371. <button type="button" class="btn btn-info margin-5" ng-click="refreshMerchantInfo(dialogData.id)"
  372. style="margin-left: 8px"><i
  373. class="fa fa-close"></i> 刷新(对该商户重新拉取一次状态)
  374. </button>
  375. <button type="button" class="btn btn-info margin-5" ng-click="wechatReplay(dialogData.id)"
  376. style="margin-left: 8px"><i
  377. class="fa fa-close"></i> 重新提交微信(微信二维码过期)
  378. </button>
  379. </footer>
  380. </div>
  381. </div>
  382. <div id="detailInfoPanel" class="form-horizontal form-validation modal fade" role="dialog"
  383. style="min-height: 300px;height: 300px">
  384. <div class="panel panel-default">
  385. <div class="panel-heading">
  386. <strong>{{infoDetail.title}}</strong>
  387. </div>
  388. <div class="panel-body">
  389. <div class="form-group">
  390. <div class="col-sm-12">
  391. <pre>{{infoDetail.content | json}}</pre>
  392. </div>
  393. </div>
  394. </div>
  395. <footer class="panel-footer text-center bg-light lter">
  396. <button type="button" class="btn btn-info margin-5" ng-click="closeDetailInfoPanel()"
  397. style="margin-left: 8px"><i
  398. class="fa fa-close"></i> 关闭
  399. </button>
  400. </footer>
  401. </div>
  402. </div>
  403. <form name="featureForm" id="featureForm" class="form-horizontal form-validation modal fade" role="dialog"
  404. style=" width: 860px;height: 480px">
  405. <div class="panel panel-default">
  406. <div class="panel-heading">
  407. <strong>特性配置</strong>
  408. </div>
  409. <div class="panel-body">
  410. <div class="form-group">
  411. <label class="col-sm-2 control-label">通用特性:</label>
  412. <div class="col-sm-10">
  413. <div class="pull-left m-r-sm" ng-repeat="item in dialogData.featureList ">
  414. <div class="checkbox">
  415. <label class="i-checks">
  416. <input type="checkbox" value="{{item.value}}" ng-model="item.value">
  417. <i></i>
  418. </label>
  419. {{item.name}}
  420. </div>
  421. </div>
  422. </div>
  423. </div>
  424. <div class="form-group">
  425. <label class="col-sm-2 control-label">特殊特性:</label>
  426. <div class="col-sm-5">
  427. <input type="text" ng-model="dialogData.specialFeature"
  428. class="form-control" placeholder="请填入特性标记">
  429. </div>
  430. </div>
  431. </div>
  432. <footer class="panel-footer text-right bg-light lter">
  433. <button type="submit" class="btn btn-success" ng-click="saveFeature()">保存
  434. </button>
  435. </footer>
  436. </div>
  437. </form>
  438. <form name="editAdForm" id="editAdForm" class="form-horizontal form-validation modal fade" role="dialog"
  439. style=" width: 480px;height:280px;min-height: 280px">
  440. <div class="panel panel-default">
  441. <div class="panel-heading">
  442. <strong>配置广告</strong>
  443. </div>
  444. <div class="panel-body">
  445. <div class="form-group">
  446. <label class="col-sm-2 control-label">开关:</label>
  447. <div class="col-sm-10">
  448. <div class="radio pull-left">
  449. <label class="i-checks">
  450. <input type="radio" name="adShow" required ng-value="true"
  451. ng-model="dialogData.adShow">
  452. <i></i>
  453. 开启
  454. </label>
  455. </div>
  456. <div class="radio pull-left m-l">
  457. <label class="i-checks">
  458. <input type="radio" name="adShow" required ng-value="false"
  459. ng-model="dialogData.adShow">
  460. <i></i>
  461. 关闭
  462. </label>
  463. </div>
  464. </div>
  465. </div>
  466. </div>
  467. <footer class="panel-footer text-right bg-light lter">
  468. <button type="submit" class="btn btn-success" ng-click="saveAdEdit()">保存
  469. </button>
  470. </footer>
  471. </div>
  472. </form>
  473. <form name="editGzhForm" id="editGzhForm" class="form-horizontal form-validation modal fade" role="dialog"
  474. style=" width: 760px;height:400px;min-height: 400px">
  475. <div class="panel panel-default">
  476. <div class="panel-heading">
  477. <strong>强制关注公众号</strong>
  478. </div>
  479. <div class="panel-body">
  480. <div class="form-group">
  481. <label class="col-sm-3 control-label">是否强制关注:</label>
  482. <div class="col-sm-9">
  483. <div class="radio pull-left" style="margin-right: 10px"
  484. ng-repeat="item in enum.forceFollowGzh" ng-if="item.value!=''">
  485. <label class="i-checks">
  486. <input type="radio" name="forceFollowGzh" required value="{{item.value}}"
  487. ng-model="dialogData.forceFollowGzh">
  488. <i></i>
  489. {{item.label}}
  490. </label>
  491. </div>
  492. </div>
  493. </div>
  494. </div>
  495. <footer class="panel-footer text-right bg-light lter">
  496. <button type="submit" class="btn btn-success" ng-click="saveGzg()">保存
  497. </button>
  498. </footer>
  499. </div>
  500. </form>
  501. <form name="dealerForm" id="dealerForm" class="form-horizontal form-validation modal fade" role="dialog"
  502. style=" width: 60%;height: 400px">
  503. <div class="panel panel-default">
  504. <div class="panel-heading">
  505. <strong>编辑</strong>
  506. </div>
  507. <div class="panel-body">
  508. <div class="form-group">
  509. <label class="col-sm-3 control-label">电话</label>
  510. <div class="col-sm-3">
  511. <input type="tel" ng-pattern="/^[1][3456789]\d{9}$/" pattern="^[1][3456789]\d{9}$"
  512. ng-maxlength="11" maxlength="11"
  513. ng-model="dialogData.username"
  514. class="form-control" placeholder="电话" required>
  515. </div>
  516. </div>
  517. </div>
  518. <footer class="panel-footer text-right bg-light lter">
  519. <button type="submit" class="btn btn-success" ng-click="saveDealer()">保存
  520. </button>
  521. </footer>
  522. </div>
  523. </form>
  524. <!--监督号的展现位置 -->
  525. <form name="moniPointForm" id="moniPointForm" class="form-horizontal form-validation modal fade"
  526. role="dialog"
  527. data-backdrop="static"
  528. style=" max-width: 540px;max-height: 280px;">
  529. <div class="panel panel-default">
  530. <div class="modal-header">
  531. <strong>展现位置批量配置</strong>
  532. <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
  533. </div>
  534. <div class="panel-body">
  535. <div class="form-group" ng-repeat="item in moniPoint">
  536. <div class="col-sm-3"></div>
  537. <div class="col-sm-6">
  538. <div class="pull-left m-r-sm">
  539. <div class="checkbox">
  540. <label class="i-checks">
  541. <input type="checkbox" ng-model="dialogData[item.key]">
  542. <i></i>
  543. {{item.name}}
  544. </label>
  545. </div>
  546. </div>
  547. </div>
  548. <div class="col-sm-3 form-inline">
  549. <button type="button" class="btn btn-success" ng-click="setMoniPoint(item.key)">单独保存
  550. </button>
  551. </div>
  552. </div>
  553. </div>
  554. <footer class="panel-footer text-right bg-light lter">
  555. <button type="submit" class="btn btn-success m-l-sm " ng-click="setMoniPoint()">全部保存
  556. </button>
  557. </footer>
  558. </div>
  559. </form>
  560. <form name="editSupporterForm" id="editSupporterForm" class="form-horizontal form-validation modal fade"
  561. role="dialog"
  562. style=" width: 760px;height:400px;min-height: 400px">
  563. <div class="panel panel-default">
  564. <div class="panel-heading">
  565. <strong>客服接管</strong>
  566. </div>
  567. <div class="panel-body">
  568. <div class="form-group">
  569. <label class="col-sm-3 control-label">客服接管开关:</label>
  570. <div class="col-sm-9">
  571. <div class="radio pull-left" style="margin-right: 10px"
  572. ng-repeat="item in enum.platformSupport" ng-if="item.value!=''">
  573. <label class="i-checks">
  574. <input type="radio" name="platformSupport" required value="{{item.value}}"
  575. ng-model="dialogData.platformSupport">
  576. <i></i>
  577. {{item.label}}
  578. </label>
  579. </div>
  580. </div>
  581. </div>
  582. </div>
  583. <footer class="panel-footer text-right bg-light lter">
  584. <button type="submit" class="btn btn-success" ng-click="saveSuporter()">保存
  585. </button>
  586. </footer>
  587. </div>
  588. </form>
  589. <!--使用前充值-->
  590. <form name="beforeChargeUnpayForm" id="beforeChargeUnpayForm" class="form-horizontal form-validation modal fade"
  591. role="dialog"
  592. style=" width: 760px;height:400px;min-height: 400px">
  593. <div class="panel panel-default">
  594. <div class="panel-heading">
  595. <strong>使用前充值</strong>
  596. </div>
  597. <div class="panel-body">
  598. <div class="form-group">
  599. <label class="col-sm-3 control-label">状态:</label>
  600. <div class="col-sm-9">
  601. <div class="radio pull-left" style="margin-right: 10px"
  602. ng-repeat="item in enum.beforeChargeUnpay" ng-if="item.value!=''">
  603. <label class="i-checks">
  604. <input type="radio" name="beforeChargeUnpay" required value="{{item.value}}"
  605. ng-model="dialogData.beforeChargeUnpay">
  606. <i></i>
  607. {{item.label}}
  608. </label>
  609. </div>
  610. </div>
  611. </div>
  612. </div>
  613. <footer class="panel-footer text-right bg-light lter">
  614. <button type="submit" class="btn btn-success" ng-click="saveBeforeChargeUnpay()">保存
  615. </button>
  616. </footer>
  617. </div>
  618. </form>
  619. <form name="bankAccountForm" id="bankAccountForm" class="form-horizontal form-validation modal fade" role="dialog"
  620. data-backdrop="static"
  621. style=" width: 1000px;min-height: 760px;height: 760px;">
  622. <div class="panel panel-default">
  623. <div class="panel-heading">
  624. <strong>银行账户</strong>
  625. <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
  626. </div>
  627. <div class="panel-body">
  628. <div ng-repeat="(index,bankInfo) in dialogData.bankCards"
  629. style="background: #f3f4f5;padding: 10px;border-radius: 10px;margin-bottom: 10px;">
  630. <div class="form-group">
  631. <label class="col-sm-3 control-label">是否对公</label>
  632. <div class="col-sm-9">
  633. <div class="radio pull-left">
  634. <label class="i-checks">
  635. <input type="radio" name="isPublic{{index}}" ng-value="false" required
  636. ng-model="bankInfo.isPublic">
  637. <i></i>
  638. </label>
  639. </div>
  640. <div class="radio pull-left m-l">
  641. <label class="i-checks">
  642. <input type="radio" name="isPublic{{index}}" ng-value="true" required
  643. ng-model="bankInfo.isPublic">
  644. <i></i>
  645. </label>
  646. </div>
  647. </div>
  648. </div>
  649. <div class="form-group">
  650. <label class="col-sm-3 control-label">银行卡号</label>
  651. <div class="col-sm-6">
  652. <input type="text" ng-model="bankInfo.accountCode"
  653. class="form-control"
  654. placeholder="银行卡号"
  655. required>
  656. </div>
  657. </div>
  658. <div class="form-group">
  659. <label class="col-sm-3 control-label">银行名称</label>
  660. <div class="col-sm-4">
  661. <ui-select ng-model="bankInfo.bankItem" theme="bootstrap" class="w-md inline v-middle">
  662. <ui-select-match placeholder="选择银行">{{$select.selected.text}}
  663. </ui-select-match>
  664. <ui-select-choices repeat="item in bankInfo.bankList| filter: $select.search">
  665. <div ng-bind-html="item.text | highlight: $select.search"></div>
  666. </ui-select-choices>
  667. </ui-select>
  668. </div>
  669. <div class="col-sm-5">
  670. <input type="text" ng-model="bankInfo.keyWord"
  671. class="form-control inline" ng-maxlength="50" maxlength="50"
  672. style="width: 150px"
  673. placeholder="关键字搜索银行"
  674. >
  675. <button type="button" class="btn btn-info inline" ng-click="searchBank(bankInfo)">搜索
  676. </button>
  677. </div>
  678. </div>
  679. <div class="form-group" ng-if="bankInfo.isPublic">
  680. <label class="col-sm-3 control-label">支行所在地区</label>
  681. <div class="col-sm-9">
  682. <ui-select ng-model="bankInfo.bankProvince" theme="bootstrap" class="w-sm inline v-middle"
  683. ng-change="ngEvent.changeProvince(bankInfo)">
  684. <ui-select-match placeholder="选择省份">{{$select.selected.text}}
  685. </ui-select-match>
  686. <ui-select-choices repeat="item in provinceList| filter: $select.search">
  687. <div ng-bind-html="item.text | highlight: $select.search"></div>
  688. </ui-select-choices>
  689. </ui-select>
  690. <ui-select ng-model="bankInfo.bankCity" theme="bootstrap" class="w-sm inline v-middle"
  691. >
  692. <ui-select-match placeholder="选择市">{{$select.selected.text}}
  693. </ui-select-match>
  694. <ui-select-choices repeat="item in bankInfo.cityList| filter: $select.search">
  695. <div ng-bind-html="item.text | highlight: $select.search"></div>
  696. </ui-select-choices>
  697. </ui-select>
  698. </div>
  699. </div>
  700. <div class="form-group" ng-if="bankInfo.isPublic">
  701. <label class="col-sm-3 control-label">支行名称</label>
  702. <div class="col-sm-9">
  703. <ui-select ng-model="bankInfo.branchBankItem" theme="bootstrap" class=" inline v-middle" style="width: 360px;">
  704. <ui-select-match placeholder="选择银行">{{$select.selected.text}}
  705. </ui-select-match>
  706. <ui-select-choices repeat="item in bankInfo.branchBankList| filter: $select.search">
  707. <div ng-bind-html="item.text | highlight: $select.search"></div>
  708. </ui-select-choices>
  709. </ui-select>
  710. <button type="button" class="btn btn-info" ng-click="searchSubBank(bankInfo)">搜索
  711. </button>
  712. </div>
  713. </div>
  714. <div class="form-group">
  715. <label class="col-sm-3 control-label">账户名称</label>
  716. <div class="col-sm-6">
  717. <input type="text" ng-model="bankInfo.accountName"
  718. class="form-control" ng-maxlength="50" maxlength="50"
  719. placeholder="账户名称"
  720. required>
  721. </div>
  722. </div>
  723. <div class="info-inline text-center">
  724. <span class="btn btn-danger" type="button" ng-click="deleteBank(index,bankInfo)">删除</span>
  725. <span class="btn btn-success" type="button" ng-click="saveBankAccount(bankInfo)">保存修改</span>
  726. </div>
  727. </div>
  728. <div class="info-inline text-center" style="padding: 5px 10px;">
  729. <span class="btn btn-info" type="button" ng-click="addBank()">添加</span>
  730. </div>
  731. </div>
  732. </div>
  733. </form>
  734. <form name="passwordForm" id="passwordPanel" class="form-horizontal form-validation modal fade" role="dialog"
  735. style=" width: 800px;min-height: 300px;height: 300px;">
  736. <div class="panel panel-default">
  737. <div class="panel-heading">
  738. <strong>修改密码</strong>
  739. </div>
  740. <div class="panel-body">
  741. <div class="form-group">
  742. <label class="col-sm-3 control-label">密码</label>
  743. <div class="col-sm-9">
  744. <input type="text" ng-model="passwordData.password"
  745. class="form-control" ng-minlength="6" minlength="6" ng-maxlength="20" maxlength="20"
  746. placeholder="输入密码"
  747. required>
  748. </div>
  749. </div>
  750. <div class="line line-dashed b-b line-lg pull-in"></div>
  751. </div>
  752. <footer class="panel-footer text-right bg-light lter">
  753. <button type="" class="btn btn-success" ng-click="savePassword()">保存
  754. </button>
  755. </footer>
  756. </div>
  757. </form>
  758. <form name="editCardFeeForm" id="editCardFeeForm" class="form-horizontal form-validation modal fade" role="dialog"
  759. style=" width: 480px;height:280px;min-height: 280px">
  760. <div class="panel panel-default">
  761. <div class="panel-heading">
  762. <strong>配置流量卡年费</strong>
  763. </div>
  764. <div class="panel-body">
  765. <div class="form-group">
  766. <label class="col-sm-3 control-label">年费:</label>
  767. <div class="col-sm-6">
  768. <input type="number" step="0.01" ng-model="dialogData.annualTrafficCost" min="0" required
  769. class="form-control" placeholder="年费">
  770. </div>
  771. </div>
  772. </div>
  773. <footer class="panel-footer text-right bg-light lter">
  774. <button type="submit" class="btn btn-success" ng-click="saveCardFeeEdit()">保存
  775. </button>
  776. </footer>
  777. </div>
  778. </form>
  779. <form name="dealerMaxPackagePrice" id="dealerMaxPackagePrice" class="form-horizontal form-validation modal fade"
  780. role="dialog"
  781. style=" width: 480px;height:280px;min-height: 280px">
  782. <div class="panel panel-default">
  783. <div class="panel-heading">
  784. <strong>经销最大套餐金额</strong>
  785. </div>
  786. <div class="panel-body">
  787. <div class="form-group">
  788. <label class="col-sm-3 control-label">金额:</label>
  789. <div class="col-sm-6">
  790. <input type="number" step="0.01" ng-model="dialogData.maxPackagePrice" min="0" required
  791. class="form-control" placeholder="金额">
  792. </div>
  793. </div>
  794. </div>
  795. <footer class="panel-footer text-right bg-light lter">
  796. <button type="submit" class="btn btn-success" ng-click="saveDealerMaxPackagePrice()">保存
  797. </button>
  798. </footer>
  799. </div>
  800. </form>
  801. <form name="apiAppForm" id="apiAppForm" class="form-horizontal form-validation modal fade" role="dialog"
  802. style=" width: 800px;min-height: 600px;height: 600px;">
  803. <div class="panel panel-default">
  804. <div class="panel-heading">
  805. <strong>API应用</strong>
  806. </div>
  807. <div class="panel-body">
  808. <div class="form-group">
  809. <label class="col-sm-3 control-label">联系人</label>
  810. <div class="col-sm-9">
  811. <input type="text" ng-model="dialogData.people"
  812. class="form-control"
  813. placeholder="联系人"
  814. required>
  815. </div>
  816. </div>
  817. <div class="form-group">
  818. <label class="col-sm-3 control-label">电话</label>
  819. <div class="col-sm-9">
  820. <input type="text" ng-model="dialogData.tel"
  821. class="form-control"
  822. placeholder="电话"
  823. required>
  824. </div>
  825. </div>
  826. <div class="form-group">
  827. <label class="col-sm-3 control-label">回调地址Url</label>
  828. <div class="col-sm-9">
  829. <input type="text" ng-model="dialogData.callbackUrl"
  830. class="form-control"
  831. placeholder="http://"
  832. required>
  833. </div>
  834. </div>
  835. <div class="form-group">
  836. <label class="col-sm-3 control-label">API配额:</label>
  837. <div class="col-sm-6">
  838. <input type="number" step="1" ng-model="dialogData.apiDeviceMax" min="0" required
  839. class="form-control" placeholder="API配额">
  840. </div>
  841. </div>
  842. <div class="form-group">
  843. <label class="col-sm-3 control-label">配额单价:</label>
  844. <div class="col-sm-6">
  845. <input type="number" step="0.01" ng-model="dialogData.apiDevicePerCost" min="0" required
  846. class="form-control" placeholder="配额单价">
  847. </div>
  848. </div>
  849. </div>
  850. <footer class="panel-footer text-right bg-light lter">
  851. <button type="submit" class="btn btn-success" ng-click="saveApiApp()">保存
  852. </button>
  853. </footer>
  854. </div>
  855. </form>
  856. </div>