dealerManage.html 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693
  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>
  132. <div id="detailInfoPanel" class="form-horizontal form-validation modal fade" role="dialog"
  133. style="min-height: 300px;height: 300px">
  134. <div class="panel panel-default">
  135. <div class="panel-heading">
  136. <strong>{{infoDetail.title}}</strong>
  137. </div>
  138. <div class="panel-body">
  139. <div class="form-group">
  140. <div class="col-sm-12">
  141. <pre>{{infoDetail.content | json}}</pre>
  142. </div>
  143. </div>
  144. </div>
  145. <footer class="panel-footer text-center bg-light lter">
  146. <button type="button" class="btn btn-info margin-5" ng-click="closeDetailInfoPanel()"
  147. style="margin-left: 8px"><i
  148. class="fa fa-close"></i> 关闭
  149. </button>
  150. </footer>
  151. </div>
  152. </div>
  153. <form name="featureForm" id="featureForm" class="form-horizontal form-validation modal fade" role="dialog"
  154. style=" width: 860px;height: 480px">
  155. <div class="panel panel-default">
  156. <div class="panel-heading">
  157. <strong>特性配置</strong>
  158. </div>
  159. <div class="panel-body">
  160. <div class="form-group">
  161. <label class="col-sm-2 control-label">通用特性:</label>
  162. <div class="col-sm-10">
  163. <div class="pull-left m-r-sm" ng-repeat="item in dialogData.featureList ">
  164. <div class="checkbox">
  165. <label class="i-checks">
  166. <input type="checkbox" value="{{item.value}}" ng-model="item.value">
  167. <i></i>
  168. </label>
  169. {{item.name}}
  170. </div>
  171. </div>
  172. </div>
  173. </div>
  174. <div class="form-group">
  175. <label class="col-sm-2 control-label">特殊特性:</label>
  176. <div class="col-sm-5">
  177. <input type="text" ng-model="dialogData.specialFeature"
  178. class="form-control" placeholder="请填入特性标记">
  179. </div>
  180. </div>
  181. </div>
  182. <footer class="panel-footer text-right bg-light lter">
  183. <button type="submit" class="btn btn-success" ng-click="saveFeature()">保存
  184. </button>
  185. </footer>
  186. </div>
  187. </form>
  188. <form name="editAdForm" id="editAdForm" class="form-horizontal form-validation modal fade" role="dialog"
  189. style=" width: 480px;height:280px;min-height: 280px">
  190. <div class="panel panel-default">
  191. <div class="panel-heading">
  192. <strong>配置广告</strong>
  193. </div>
  194. <div class="panel-body">
  195. <div class="form-group">
  196. <label class="col-sm-2 control-label">开关:</label>
  197. <div class="col-sm-10">
  198. <div class="radio pull-left">
  199. <label class="i-checks">
  200. <input type="radio" name="adShow" required ng-value="true"
  201. ng-model="dialogData.adShow">
  202. <i></i>
  203. 开启
  204. </label>
  205. </div>
  206. <div class="radio pull-left m-l">
  207. <label class="i-checks">
  208. <input type="radio" name="adShow" required ng-value="false"
  209. ng-model="dialogData.adShow">
  210. <i></i>
  211. 关闭
  212. </label>
  213. </div>
  214. </div>
  215. </div>
  216. </div>
  217. <footer class="panel-footer text-right bg-light lter">
  218. <button type="submit" class="btn btn-success" ng-click="saveAdEdit()">保存
  219. </button>
  220. </footer>
  221. </div>
  222. </form>
  223. <form name="editGzhForm" id="editGzhForm" class="form-horizontal form-validation modal fade" role="dialog"
  224. style=" width: 760px;height:400px;min-height: 400px">
  225. <div class="panel panel-default">
  226. <div class="panel-heading">
  227. <strong>强制关注公众号</strong>
  228. </div>
  229. <div class="panel-body">
  230. <div class="form-group">
  231. <label class="col-sm-3 control-label">是否强制关注:</label>
  232. <div class="col-sm-9">
  233. <div class="radio pull-left" style="margin-right: 10px"
  234. ng-repeat="item in enum.forceFollowGzh" ng-if="item.value!=''">
  235. <label class="i-checks">
  236. <input type="radio" name="forceFollowGzh" required value="{{item.value}}"
  237. ng-model="dialogData.forceFollowGzh">
  238. <i></i>
  239. {{item.label}}
  240. </label>
  241. </div>
  242. </div>
  243. </div>
  244. </div>
  245. <footer class="panel-footer text-right bg-light lter">
  246. <button type="submit" class="btn btn-success" ng-click="saveGzg()">保存
  247. </button>
  248. </footer>
  249. </div>
  250. </form>
  251. <form name="dealerForm" id="dealerForm" class="form-horizontal form-validation modal fade" role="dialog"
  252. style=" width: 60%;height: 400px">
  253. <div class="panel panel-default">
  254. <div class="panel-heading">
  255. <strong>编辑</strong>
  256. </div>
  257. <div class="panel-body">
  258. <div class="form-group">
  259. <label class="col-sm-3 control-label">电话</label>
  260. <div class="col-sm-3">
  261. <input type="tel" ng-pattern="/^[1][3456789]\d{9}$/" pattern="^[1][3456789]\d{9}$"
  262. ng-maxlength="11" maxlength="11"
  263. ng-model="dialogData.username"
  264. class="form-control" placeholder="电话" required>
  265. </div>
  266. </div>
  267. </div>
  268. <footer class="panel-footer text-right bg-light lter">
  269. <button type="submit" class="btn btn-success" ng-click="saveDealer()">保存
  270. </button>
  271. </footer>
  272. </div>
  273. </form>
  274. <!--监督号的展现位置 -->
  275. <form name="moniPointForm" id="moniPointForm" class="form-horizontal form-validation modal fade"
  276. role="dialog"
  277. data-backdrop="static"
  278. style=" max-width: 540px;max-height: 280px;">
  279. <div class="panel panel-default">
  280. <div class="modal-header">
  281. <strong>展现位置批量配置</strong>
  282. <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
  283. </div>
  284. <div class="panel-body">
  285. <div class="form-group" ng-repeat="item in moniPoint">
  286. <div class="col-sm-3"></div>
  287. <div class="col-sm-6">
  288. <div class="pull-left m-r-sm">
  289. <div class="checkbox">
  290. <label class="i-checks">
  291. <input type="checkbox" ng-model="dialogData[item.key]">
  292. <i></i>
  293. {{item.name}}
  294. </label>
  295. </div>
  296. </div>
  297. </div>
  298. <div class="col-sm-3 form-inline">
  299. <button type="button" class="btn btn-success" ng-click="setMoniPoint(item.key)">单独保存
  300. </button>
  301. </div>
  302. </div>
  303. </div>
  304. <footer class="panel-footer text-right bg-light lter">
  305. <button type="submit" class="btn btn-success m-l-sm " ng-click="setMoniPoint()">全部保存
  306. </button>
  307. </footer>
  308. </div>
  309. </form>
  310. <form name="editSupporterForm" id="editSupporterForm" class="form-horizontal form-validation modal fade"
  311. role="dialog"
  312. style=" width: 760px;height:400px;min-height: 400px">
  313. <div class="panel panel-default">
  314. <div class="panel-heading">
  315. <strong>客服接管</strong>
  316. </div>
  317. <div class="panel-body">
  318. <div class="form-group">
  319. <label class="col-sm-3 control-label">客服接管开关:</label>
  320. <div class="col-sm-9">
  321. <div class="radio pull-left" style="margin-right: 10px"
  322. ng-repeat="item in enum.platformSupport" ng-if="item.value!=''">
  323. <label class="i-checks">
  324. <input type="radio" name="platformSupport" required value="{{item.value}}"
  325. ng-model="dialogData.platformSupport">
  326. <i></i>
  327. {{item.label}}
  328. </label>
  329. </div>
  330. </div>
  331. </div>
  332. </div>
  333. <footer class="panel-footer text-right bg-light lter">
  334. <button type="submit" class="btn btn-success" ng-click="saveSuporter()">保存
  335. </button>
  336. </footer>
  337. </div>
  338. </form>
  339. <!--使用前充值-->
  340. <form name="beforeChargeUnpayForm" id="beforeChargeUnpayForm" class="form-horizontal form-validation modal fade"
  341. role="dialog"
  342. style=" width: 760px;height:400px;min-height: 400px">
  343. <div class="panel panel-default">
  344. <div class="panel-heading">
  345. <strong>使用前充值</strong>
  346. </div>
  347. <div class="panel-body">
  348. <div class="form-group">
  349. <label class="col-sm-3 control-label">状态:</label>
  350. <div class="col-sm-9">
  351. <div class="radio pull-left" style="margin-right: 10px"
  352. ng-repeat="item in enum.beforeChargeUnpay" ng-if="item.value!=''">
  353. <label class="i-checks">
  354. <input type="radio" name="beforeChargeUnpay" required value="{{item.value}}"
  355. ng-model="dialogData.beforeChargeUnpay">
  356. <i></i>
  357. {{item.label}}
  358. </label>
  359. </div>
  360. </div>
  361. </div>
  362. </div>
  363. <footer class="panel-footer text-right bg-light lter">
  364. <button type="submit" class="btn btn-success" ng-click="saveBeforeChargeUnpay()">保存
  365. </button>
  366. </footer>
  367. </div>
  368. </form>
  369. <form name="bankAccountForm" id="bankAccountForm" class="form-horizontal form-validation modal fade" role="dialog"
  370. data-backdrop="static"
  371. style=" width: 1000px;min-height: 760px;height: 760px;">
  372. <div class="panel panel-default">
  373. <div class="panel-heading">
  374. <strong>银行账户</strong>
  375. <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
  376. </div>
  377. <div class="panel-body">
  378. <div ng-repeat="(index,bankInfo) in dialogData.bankCards"
  379. style="background: #f3f4f5;padding: 10px;border-radius: 10px;margin-bottom: 10px;">
  380. <div class="form-group">
  381. <label class="col-sm-3 control-label">是否对公</label>
  382. <div class="col-sm-9">
  383. <div class="radio pull-left">
  384. <label class="i-checks">
  385. <input type="radio" name="isPublic{{index}}" ng-value="false" required
  386. ng-model="bankInfo.isPublic">
  387. <i></i>
  388. </label>
  389. </div>
  390. <div class="radio pull-left m-l">
  391. <label class="i-checks">
  392. <input type="radio" name="isPublic{{index}}" ng-value="true" required
  393. ng-model="bankInfo.isPublic">
  394. <i></i>
  395. </label>
  396. </div>
  397. </div>
  398. </div>
  399. <div class="form-group">
  400. <label class="col-sm-3 control-label">银行卡号</label>
  401. <div class="col-sm-6">
  402. <input type="text" ng-model="bankInfo.accountCode"
  403. class="form-control"
  404. placeholder="银行卡号"
  405. required>
  406. </div>
  407. </div>
  408. <div class="form-group">
  409. <label class="col-sm-3 control-label">银行名称</label>
  410. <div class="col-sm-4">
  411. <ui-select ng-model="bankInfo.bankItem" theme="bootstrap" class="w-md inline v-middle">
  412. <ui-select-match placeholder="选择银行">{{$select.selected.text}}
  413. </ui-select-match>
  414. <ui-select-choices repeat="item in bankInfo.bankList| filter: $select.search">
  415. <div ng-bind-html="item.text | highlight: $select.search"></div>
  416. </ui-select-choices>
  417. </ui-select>
  418. </div>
  419. <div class="col-sm-5">
  420. <input type="text" ng-model="bankInfo.keyWord"
  421. class="form-control inline" ng-maxlength="50" maxlength="50"
  422. style="width: 150px"
  423. placeholder="关键字搜索银行"
  424. >
  425. <button type="button" class="btn btn-info inline" ng-click="searchBank(bankInfo)">搜索
  426. </button>
  427. </div>
  428. </div>
  429. <div class="form-group" ng-if="bankInfo.isPublic">
  430. <label class="col-sm-3 control-label">支行所在地区</label>
  431. <div class="col-sm-9">
  432. <ui-select ng-model="bankInfo.bankProvince" theme="bootstrap" class="w-sm inline v-middle"
  433. ng-change="ngEvent.changeProvince(bankInfo)">
  434. <ui-select-match placeholder="选择省份">{{$select.selected.text}}
  435. </ui-select-match>
  436. <ui-select-choices repeat="item in provinceList| filter: $select.search">
  437. <div ng-bind-html="item.text | highlight: $select.search"></div>
  438. </ui-select-choices>
  439. </ui-select>
  440. <ui-select ng-model="bankInfo.bankCity" theme="bootstrap" class="w-sm inline v-middle"
  441. >
  442. <ui-select-match placeholder="选择市">{{$select.selected.text}}
  443. </ui-select-match>
  444. <ui-select-choices repeat="item in bankInfo.cityList| filter: $select.search">
  445. <div ng-bind-html="item.text | highlight: $select.search"></div>
  446. </ui-select-choices>
  447. </ui-select>
  448. </div>
  449. </div>
  450. <div class="form-group" ng-if="bankInfo.isPublic">
  451. <label class="col-sm-3 control-label">支行名称</label>
  452. <div class="col-sm-9">
  453. <ui-select ng-model="bankInfo.branchBankItem" theme="bootstrap" class=" inline v-middle" style="width: 360px;">
  454. <ui-select-match placeholder="选择银行">{{$select.selected.text}}
  455. </ui-select-match>
  456. <ui-select-choices repeat="item in bankInfo.branchBankList| filter: $select.search">
  457. <div ng-bind-html="item.text | highlight: $select.search"></div>
  458. </ui-select-choices>
  459. </ui-select>
  460. <button type="button" class="btn btn-info" ng-click="searchSubBank(bankInfo)">搜索
  461. </button>
  462. </div>
  463. </div>
  464. <div class="form-group">
  465. <label class="col-sm-3 control-label">账户名称</label>
  466. <div class="col-sm-6">
  467. <input type="text" ng-model="bankInfo.accountName"
  468. class="form-control" ng-maxlength="50" maxlength="50"
  469. placeholder="账户名称"
  470. required>
  471. </div>
  472. </div>
  473. <div class="info-inline text-center">
  474. <span class="btn btn-danger" type="button" ng-click="deleteBank(index,bankInfo)">删除</span>
  475. <span class="btn btn-success" type="button" ng-click="saveBankAccount(bankInfo)">保存修改</span>
  476. </div>
  477. </div>
  478. <div class="info-inline text-center" style="padding: 5px 10px;">
  479. <span class="btn btn-info" type="button" ng-click="addBank()">添加</span>
  480. </div>
  481. </div>
  482. </div>
  483. </form>
  484. <form name="passwordForm" id="passwordPanel" class="form-horizontal form-validation modal fade" role="dialog"
  485. style=" width: 800px;min-height: 300px;height: 300px;">
  486. <div class="panel panel-default">
  487. <div class="panel-heading">
  488. <strong>修改密码</strong>
  489. </div>
  490. <div class="panel-body">
  491. <div class="form-group">
  492. <label class="col-sm-3 control-label">密码</label>
  493. <div class="col-sm-9">
  494. <input type="text" ng-model="passwordData.password"
  495. class="form-control" ng-minlength="6" minlength="6" ng-maxlength="20" maxlength="20"
  496. placeholder="输入密码"
  497. required>
  498. </div>
  499. </div>
  500. <div class="line line-dashed b-b line-lg pull-in"></div>
  501. </div>
  502. <footer class="panel-footer text-right bg-light lter">
  503. <button type="" class="btn btn-success" ng-click="savePassword()">保存
  504. </button>
  505. </footer>
  506. </div>
  507. </form>
  508. <form name="editCardFeeForm" id="editCardFeeForm" class="form-horizontal form-validation modal fade" role="dialog"
  509. style=" width: 480px;height:280px;min-height: 280px">
  510. <div class="panel panel-default">
  511. <div class="panel-heading">
  512. <strong>配置流量卡年费</strong>
  513. </div>
  514. <div class="panel-body">
  515. <div class="form-group">
  516. <label class="col-sm-3 control-label">年费:</label>
  517. <div class="col-sm-6">
  518. <input type="number" step="0.01" ng-model="dialogData.annualTrafficCost" min="0" required
  519. class="form-control" placeholder="年费">
  520. </div>
  521. </div>
  522. </div>
  523. <footer class="panel-footer text-right bg-light lter">
  524. <button type="submit" class="btn btn-success" ng-click="saveCardFeeEdit()">保存
  525. </button>
  526. </footer>
  527. </div>
  528. </form>
  529. <form name="dealerMaxPackagePrice" id="dealerMaxPackagePrice" class="form-horizontal form-validation modal fade"
  530. role="dialog"
  531. style=" width: 480px;height:280px;min-height: 280px">
  532. <div class="panel panel-default">
  533. <div class="panel-heading">
  534. <strong>经销最大套餐金额</strong>
  535. </div>
  536. <div class="panel-body">
  537. <div class="form-group">
  538. <label class="col-sm-3 control-label">金额:</label>
  539. <div class="col-sm-6">
  540. <input type="number" step="0.01" ng-model="dialogData.maxPackagePrice" min="0" required
  541. class="form-control" placeholder="金额">
  542. </div>
  543. </div>
  544. </div>
  545. <footer class="panel-footer text-right bg-light lter">
  546. <button type="submit" class="btn btn-success" ng-click="saveDealerMaxPackagePrice()">保存
  547. </button>
  548. </footer>
  549. </div>
  550. </form>
  551. <form name="apiAppForm" id="apiAppForm" class="form-horizontal form-validation modal fade" role="dialog"
  552. style=" width: 800px;min-height: 600px;height: 600px;">
  553. <div class="panel panel-default">
  554. <div class="panel-heading">
  555. <strong>API应用</strong>
  556. </div>
  557. <div class="panel-body">
  558. <div class="form-group">
  559. <label class="col-sm-3 control-label">联系人</label>
  560. <div class="col-sm-9">
  561. <input type="text" ng-model="dialogData.people"
  562. class="form-control"
  563. placeholder="联系人"
  564. required>
  565. </div>
  566. </div>
  567. <div class="form-group">
  568. <label class="col-sm-3 control-label">电话</label>
  569. <div class="col-sm-9">
  570. <input type="text" ng-model="dialogData.tel"
  571. class="form-control"
  572. placeholder="电话"
  573. required>
  574. </div>
  575. </div>
  576. <div class="form-group">
  577. <label class="col-sm-3 control-label">回调地址Url</label>
  578. <div class="col-sm-9">
  579. <input type="text" ng-model="dialogData.callbackUrl"
  580. class="form-control"
  581. placeholder="http://"
  582. required>
  583. </div>
  584. </div>
  585. <div class="form-group">
  586. <label class="col-sm-3 control-label">API配额:</label>
  587. <div class="col-sm-6">
  588. <input type="number" step="1" ng-model="dialogData.apiDeviceMax" min="0" required
  589. class="form-control" placeholder="API配额">
  590. </div>
  591. </div>
  592. <div class="form-group">
  593. <label class="col-sm-3 control-label">配额单价:</label>
  594. <div class="col-sm-6">
  595. <input type="number" step="0.01" ng-model="dialogData.apiDevicePerCost" min="0" required
  596. class="form-control" placeholder="配额单价">
  597. </div>
  598. </div>
  599. </div>
  600. <footer class="panel-footer text-right bg-light lter">
  601. <button type="submit" class="btn btn-success" ng-click="saveApiApp()">保存
  602. </button>
  603. </footer>
  604. </div>
  605. </form>
  606. </div>