add.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659
  1. <template>
  2. <div>
  3. <el-button class="inline-24" type="primary" size="small" @click="onShow" v-if="sys_payswitch == 1 && tool.checkAuth($route.name,'insert')" >新建付费订单</el-button>
  4. <el-dialog
  5. title="付费订单"
  6. :visible.sync="dialogVisible"
  7. width="980px"
  8. @close="onClose"
  9. >
  10. <el-row :gutter="20" style="margin-top: -20px">
  11. <el-col :span="24" v-if="payInstructions">
  12. <div class="pay_border">
  13. <span class="pay_font">付费说明:{{payInstructions}}</span>
  14. </div>
  15. </el-col>
  16. <el-col :span="24" class="div_top">
  17. <span style="color: red">*</span>
  18. <span>选择版本:</span>
  19. <el-select style="margin-left: 10px" size="small" v-model="version" placeholder="请选择" @change="onCheck">
  20. <el-option
  21. v-for="item in versionList"
  22. :key="item.sys_site_systempartitionid"
  23. :label="item.partitionname"
  24. :value="item.sys_site_systempartitionid">
  25. </el-option>
  26. </el-select>
  27. </el-col>
  28. <el-col :span="24" class="div_top">
  29. <span style="color: red">*</span>
  30. <span>选择付费账号:</span>
  31. </el-col>
  32. <el-col :span="24" class="div_top" v-if="sys_payincidence == '1'">
  33. <tableLayout ref="account1" :layout="tablecolsAccount" :data="list" :opwidth="200" :custom="true" :height="'240px'" fixedName="operation">
  34. <template v-slot:customcol="scope">
  35. <span v-if="scope.column.columnname === 'operation'" ></span>
  36. <span v-else-if="scope.column.columnname === 'enddate'">
  37. <span v-for="(item,index) in scope.column.data.enddate" :key="index">
  38. <span v-if="form.sys_site_systempartitionid == index">{{item}}</span>
  39. </span>
  40. </span>
  41. <span v-else-if="scope.column.columnname === 'name'">
  42. <span v-if="JSON.stringify(scope.column.data.enddate) === '{}'">
  43. <span style="margin-right: 10px">{{scope.column.data.name}}</span>
  44. <el-tag type="danger" size="mini">未付费</el-tag>
  45. </span>
  46. <span v-else>
  47. <span v-if="dataNow > JSON.stringify(scope.column.data.enddate)">
  48. <span style="margin-right: 10px">{{scope.column.data.name}}</span>
  49. <el-tag type="danger" size="mini">未付费</el-tag>
  50. </span>
  51. <span v-else>{{scope.column.data.name}}</span>
  52. </span>
  53. </span>
  54. <span v-else-if="scope.column.columnname === 'accountno'">
  55. <span v-if="scope.column.data.isleader == 1">
  56. <span style="margin-right: 10px">{{scope.column.data.accountno}}</span>
  57. <el-tag type="danger" size="mini">主账号</el-tag>
  58. </span>
  59. <span v-else>
  60. <span>{{scope.column.data.accountno}}</span>
  61. </span>
  62. </span>
  63. <p v-else>{{scope.column.data[scope.column.columnname] || '--'}}</p>
  64. </template>
  65. <template v-slot:opreation="scope">
  66. <el-checkbox :checked="scope.data.checkRow" @change="userCheck(scope.data)" :disabled="userLeader === scope.data.userid"></el-checkbox>
  67. </template>
  68. </tableLayout>
  69. </el-col>
  70. <el-col :span="24" class="div_top" v-if="sys_payincidence == '2'">
  71. <tableLayout ref="account2" :layout="tablecolsMain" :data="list" :opwidth="200" :custom="true" :height="'370px'" fixedName="operation">
  72. <template v-slot:customcol="scope">
  73. <span v-if="scope.column.columnname === 'operation'" ></span>
  74. <span v-else-if="scope.column.columnname === 'enddate'">
  75. <span v-for="(item,index) in scope.column.data.enddate" :key="index">
  76. <span v-if="form.sys_site_systempartitionid == index">{{item}}</span>
  77. </span>
  78. </span>
  79. <p v-else>{{scope.column.data[scope.column.columnname] || ''}}</p>
  80. </template>
  81. <template v-slot:opreation="scope">
  82. <el-checkbox :checked="scope.data.checkRow" @change="userCheck(scope.data)" :disabled="userLeader === scope.data.userid"></el-checkbox>
  83. </template>
  84. </tableLayout>
  85. </el-col>
  86. <el-col :span="24" class="div_top">
  87. <el-form :model="form" ref="form" label-width="50px" label-position="right" size="mini">
  88. <el-form-item label="备注:" >
  89. <el-input v-model="form.remarks" placeholder="请输入备注内容"></el-input>
  90. </el-form-item>
  91. </el-form>
  92. </el-col>
  93. <el-col :span="24" >
  94. <el-form :model="form" ref="form" label-width="90px" label-position="right" size="mini" style="font-weight: bold;font-size: 15px!important;">
  95. <el-col :span="24"><span>使用抵扣券:</span></el-col>
  96. <el-row>
  97. <el-col :span="6" v-for="item in couponList" :key="item.index" style="margin-right: 30px">
  98. <div class="card" :style="{background: useColor}" v-if="item.rowindex <= usAccountNum">
  99. <div class="card-left">抵扣一年</div>
  100. <div class="card-right">
  101. <p class="card-info">账号优惠券</p>
  102. <strong class="card-time">有效期至{{item.enddate}}</strong>
  103. </div>
  104. </div>
  105. <div class="card" :style="{background: bgColor}" v-else>
  106. <div class="card-left">抵扣一年</div>
  107. <div class="card-right">
  108. <p class="card-info">账号优惠券</p>
  109. <strong class="card-time">有效期至{{item.enddate}}</strong>
  110. </div>
  111. </div>
  112. </el-col>
  113. </el-row>
  114. <!-- <el-form-item label="使用抵扣券:" style="font-size: 20px">
  115. </el-form-item>-->
  116. </el-form>
  117. </el-col>
  118. </el-row>
  119. <div style="margin-top: 20px;margin-bottom: -20px">
  120. <el-row>
  121. <el-col :sapn="24">
  122. <div style="float: right;margin-top: 10px">
  123. 账号数:<span style="color: red">{{accountNum}}</span>
  124. </div>
  125. </el-col>
  126. <el-col :sapn="24">
  127. <div style="float: right;margin-top: 10px">
  128. 原价:<span style="color: red">¥{{orig_amount}}</span>
  129. </div>
  130. </el-col>
  131. <el-col :sapn="24">
  132. <div style="float: right;margin-top: 10px" v-if="coupon_amount === 0">
  133. 优惠券抵扣:<span style="color: red">¥{{coupon_amount}}</span>
  134. </div>
  135. <div style="float: right;margin-top: 10px" v-else>
  136. 优惠券抵扣:<span style="color: red">-¥{{tool.formatAmount(coupon_amount,2)}}</span>
  137. </div>
  138. </el-col>
  139. <el-col :sapn="24">
  140. <div style="float: right;margin-top: 10px">
  141. 应付总额:<span style="color: red;font-size: 18px">¥{{amount}}</span>
  142. </div>
  143. </el-col>
  144. </el-row>
  145. </div>
  146. <span slot="footer" class="dialog-footer">
  147. <!-- <span >共</span>
  148. <span style="color: red">{{accountNum}}</span>
  149. <span style="margin-right: 10px">个账号</span>
  150. <span >总价:</span>
  151. <span style="color: red;margin-right: 10px">¥{{amount}}</span>-->
  152. <el-button type="danger" @click="onSubmit" :disabled="userids.length === 0">提交订单</el-button>
  153. </span>
  154. </el-dialog>
  155. </div>
  156. </template>
  157. <script>
  158. import tableLayout from '@/components/table/index2.vue'
  159. export default {
  160. name: "add",
  161. data() {
  162. return {
  163. // bgColor:linear-gradient(45deg, orange, red),
  164. bgColor:'linear-gradient(45deg, grey, grey)',
  165. useColor:'linear-gradient(45deg, orange, red)',
  166. dialogVisible:false,
  167. message:'',
  168. dataNow:'',
  169. versionList:[],
  170. modulesList:[],
  171. couponList:[],
  172. form:{
  173. "sys_site_systempartitionid": '',
  174. "orderno":'',
  175. "sys_payorderid": '',
  176. "remarks": "",
  177. "userids": []
  178. },
  179. tablecolsAccount:[],
  180. tablecolsMain:[],
  181. tablecolsVersion:[],
  182. list:[],
  183. param:{
  184. "classname": "system.payorder.payorder",
  185. "method": "chooseUsers",
  186. "content": {
  187. "pageNumber": 1,
  188. "pageSize": 999,
  189. "where": {
  190. "condition": ""
  191. }
  192. },
  193. },
  194. payInstructions:'',
  195. sys_payincidence:'',
  196. userids:[],
  197. accountNum:0,
  198. usAccountNum:0,
  199. amount:0,
  200. orig_amount:0,
  201. coupon_amount:0,
  202. createNow:false,
  203. sys_payswitch:'1',
  204. userLeader:'',
  205. version:"",
  206. isleader:''
  207. }
  208. },
  209. components:{tableLayout},
  210. methods:{
  211. onShow(){
  212. this.dialogVisible = true
  213. /*this.queryAccount()*/
  214. this.queryInstructions()
  215. this.queryCoupon()
  216. this.creatOrder()
  217. /*this.queryVersion()*/
  218. },
  219. /*新建订单*/
  220. async creatOrder(){
  221. const res = await this.$api.requested({
  222. "classname": "system.payorder.payorder",
  223. "method": "createOrder",
  224. "content": {},
  225. })
  226. this.form.sys_payorderid = res.data.sys_payorderid
  227. this.form.orderno = res.data.orderno
  228. this.queryVersion()
  229. },
  230. /*查询付费说明*/
  231. async queryInstructions(){
  232. const res = await this.$api.requested({
  233. "classname": "webmanage.site.site",
  234. "method": "querySite_Parameter",
  235. "content": {},
  236. })
  237. this.payInstructions = res.data.sys_payinstructions
  238. this.sys_payincidence = res.data.sys_payincidence
  239. this.sys_payswitch = res.data.sys_payswitch
  240. },
  241. /*查询可选版本信息*/
  242. async queryVersion(){
  243. const res = await this.$api.requested({
  244. "classname": "system.payorder.payorder",
  245. "method": "chooseSystemPartition",
  246. "content": {
  247. "pageNumber": 1,
  248. "pageSize": 999,
  249. "where": {
  250. "condition": ""
  251. }
  252. },
  253. })
  254. this.versionList = res.data.map(item=>{
  255. return {
  256. partitionname:item.partitionname,
  257. rowindex:item.rowindex,
  258. sys_site_systempartitionid:item.sys_site_systempartitionid,
  259. systemapp:item.systemapp,
  260. systemappids:item.systemappids,
  261. checkRow:false
  262. }
  263. })
  264. if (this.$route.query.isPay == 2){
  265. this.versionList.forEach(item=>{
  266. if (item.sys_site_systempartitionid == this.$route.query.id){
  267. this.version = item.sys_site_systempartitionid
  268. item.checkRow = true
  269. this.modulesList = item.systemapp
  270. this.form.sys_site_systempartitionid = item.sys_site_systempartitionid
  271. this.queryAccount()
  272. this.$refs.version.$refs.myTable.doLayout()
  273. }
  274. })
  275. }else {
  276. this.version = this.versionList[0].sys_site_systempartitionid
  277. this.versionList[0].checkRow = true
  278. this.modulesList = this.versionList[0].systemapp
  279. this.form.sys_site_systempartitionid = this.versionList[0].sys_site_systempartitionid
  280. this.queryAccount()
  281. this.$refs.version.$refs.myTable.doLayout()
  282. }
  283. },
  284. /*获取可选账号*/
  285. async queryAccount(){
  286. this.list = []
  287. const res = await this.$api.requested(this.param)
  288. this.list = res.data.map(item=>{
  289. return {
  290. accountno:item.accountno,
  291. name:item.name,
  292. agentname:item.agentname,
  293. enddate:item.enddate,
  294. isleader:item.isleader,
  295. phonenumber:item.phonenumber,
  296. rowindex:item.rowindex,
  297. sa_agentsid:item.sa_agentsid,
  298. userid:item.userid,
  299. checkRow:false
  300. }
  301. })
  302. this.isleader = 0
  303. this.list.forEach(item=>{
  304. if (item.isleader ===1){
  305. this.isleader = 1
  306. return
  307. }
  308. })
  309. let date = new Date()
  310. let dateNow = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate()
  311. this.dataNow = dateNow
  312. if (this.$route.query.isPay == 2){
  313. this.list.forEach((item,index)=>{
  314. for (var i=0;i<this.$route.query.userid.length;i++){
  315. if (item.userid == this.$route.query.userid[i]){
  316. item.checkRow = true
  317. }
  318. }
  319. if (item.isleader === 1){
  320. if (item.enddate[this.form.sys_site_systempartitionid]){
  321. if (dateNow > item.enddate[this.form.sys_site_systempartitionid]){
  322. item.checkRow = true
  323. this.userLeader = item.userid
  324. }
  325. }else {
  326. item.checkRow = true
  327. this.userLeader = item.userid
  328. }
  329. }
  330. })
  331. this.userids = []
  332. this.list.forEach(item=>{
  333. if (item.checkRow){
  334. this.userids.push({
  335. "isleader": item.isleader,
  336. "userid": item.userid,
  337. "sa_agentsid": item.sa_agentsid,
  338. "enddate": item.enddate[this.form.sys_site_systempartitionid]
  339. })
  340. }
  341. })
  342. this.accountNum = this.userids.length
  343. let newLength = this.userids.filter(item=>{
  344. return item.isleader !== 1
  345. })
  346. console.log(newLength,'newL')
  347. this.usAccountNum = newLength.length
  348. this.queryPrice()
  349. this.$refs.account1.$refs.myTable.doLayout()
  350. this.$refs.account2.$refs.myTable.doLayout()
  351. }else {
  352. this.list.forEach((item)=>{
  353. if (item.isleader === 1){
  354. if (item.enddate[this.form.sys_site_systempartitionid]){
  355. if (dateNow > item.enddate[this.form.sys_site_systempartitionid]){
  356. item.checkRow = true
  357. this.userLeader = item.userid
  358. }
  359. }else {
  360. item.checkRow = true
  361. this.userLeader = item.userid
  362. }
  363. }
  364. })
  365. this.userids = []
  366. this.list.forEach(item=>{
  367. if (item.checkRow){
  368. this.userids.push({
  369. "isleader": item.isleader,
  370. "userid": item.userid,
  371. "sa_agentsid": item.sa_agentsid,
  372. "enddate": item.enddate[this.form.sys_site_systempartitionid]
  373. })
  374. }
  375. })
  376. this.accountNum = this.userids.length
  377. let newLength = this.userids.filter(item=>{
  378. return item.isleader !== 1
  379. })
  380. console.log(newLength,'newL1')
  381. this.usAccountNum = newLength.length
  382. this.queryPrice()
  383. this.$refs.account1.$refs.myTable.doLayout()
  384. this.$refs.account2.$refs.myTable.doLayout()
  385. }
  386. },
  387. /*选择版本*/
  388. onCheck(val){
  389. this.userLeader = ''
  390. this.userids = []
  391. this.form.sys_site_systempartitionid = val
  392. /*this.versionList.forEach(item=>{
  393. if (item.sys_site_systempartitionid === val.sys_site_systempartitionid){
  394. item.checkRow = true
  395. this.form.sys_site_systempartitionid = item.sys_site_systempartitionid
  396. }else {
  397. item.checkRow = false
  398. }
  399. this.modulesList = val.systemapp
  400. })*/
  401. /* this.list.forEach(item=>{
  402. if (item.checkRow){
  403. item.checkRow = false
  404. }
  405. })
  406. console.log(this.list)*/
  407. this.queryAccount()
  408. },
  409. /*选择付费账号*/
  410. userCheck(val){
  411. this.userids = []
  412. if (this.userLeader !== val.userid){
  413. val.checkRow ? this.list[val.index].checkRow = false : this.list[val.index].checkRow = true
  414. }
  415. this.list.forEach(item=>{
  416. if (item.checkRow){
  417. this.userids.push({
  418. "name":item.name,
  419. "isleader": item.isleader,
  420. "userid": item.userid,
  421. "sa_agentsid": item.sa_agentsid,
  422. "enddate": item.enddate[this.form.sys_site_systempartitionid]
  423. })
  424. }
  425. })
  426. this.accountNum = this.userids.length
  427. this.message = ''
  428. this.userids.forEach((item,index)=>{
  429. if (item.enddate !== '' && item.enddate !== undefined){
  430. if (index === 0){
  431. this.message = item.name
  432. }else {
  433. this.message = this.message + ',' + item.name
  434. }
  435. }
  436. })
  437. let newLength = this.userids.filter(item=>{
  438. return item.isleader !== 1
  439. })
  440. this.usAccountNum = newLength.length
  441. this.queryPrice()
  442. },
  443. rowClick(val){
  444. this.onCheck(val)
  445. },
  446. onSubmit(){
  447. this.createNow = true
  448. this.queryPrice()
  449. },
  450. /*获取订单价格*/
  451. async queryPrice(){
  452. const res = await this.$api.requested({
  453. "classname": "system.payorder.payorder",
  454. "method": "insertUsers",
  455. "content": {
  456. "sys_site_systempartitionid": this.form.sys_site_systempartitionid,
  457. "sys_payorderid": this.form.sys_payorderid,
  458. "remarks": this.form.remarks,
  459. "users": this.userids
  460. },
  461. })
  462. this.amount = res.data.amount
  463. this.orig_amount = res.data.orig_amount
  464. if (this.couponList.length > 0){
  465. this.coupon_amount = res.data.orig_amount - res.data.amount
  466. }else {
  467. this.coupon_amount = 0
  468. }
  469. if (this.createNow){
  470. if (this.isleader === 1){
  471. if (this.message !== ''){
  472. this.$confirm(this.message+' 付费还未到期,是否继续付费?', '提示', {
  473. confirmButtonText: '确定',
  474. cancelButtonText: '取消',
  475. type: 'warning'
  476. }).then(() => {
  477. if (this.amount === 0){
  478. this.createNow = false
  479. this.amount = 0
  480. this.orig_amount = 0
  481. this.coupon_amount = 0
  482. this.userLeader = ''
  483. this.form.remarks = ''
  484. this.accountNum = 0
  485. this.usAccountNum = 0
  486. this.isleader = 0
  487. this.$emit('addSuccess',this.form.orderno,this.message)
  488. }else {
  489. this.dialogVisible = false
  490. this.createNow = false
  491. this.amount = 0
  492. this.orig_amount = 0
  493. this.coupon_amount = 0
  494. this.userLeader = ''
  495. this.form.remarks = ''
  496. this.accountNum = 0
  497. this.usAccountNum = 0
  498. this.isleader = 0
  499. this.$emit('onSuccess',this.form.sys_payorderid,this.form.orderno,this.message)
  500. }
  501. }).catch(() => {
  502. });
  503. }else {
  504. if (this.amount === 0){
  505. this.createNow = false
  506. this.amount = 0
  507. this.orig_amount = 0
  508. this.coupon_amount = 0
  509. this.userLeader = ''
  510. this.form.remarks = ''
  511. this.accountNum = 0
  512. this.usAccountNum = 0
  513. this.isleader = 0
  514. this.$emit('addSuccess',this.form.orderno,this.message)
  515. }else {
  516. this.dialogVisible = false
  517. this.createNow = false
  518. this.amount = 0
  519. this.orig_amount = 0
  520. this.coupon_amount = 0
  521. this.userLeader = ''
  522. this.form.remarks = ''
  523. this.accountNum = 0
  524. this.usAccountNum = 0
  525. this.isleader = 0
  526. this.$emit('onSuccess',this.form.sys_payorderid,this.form.orderno,this.message)
  527. }
  528. }
  529. }else {
  530. this.$confirm('您的团队缺少主账号无法使用,请联系客服!', '提示', {
  531. confirmButtonText: '确定',
  532. showCancelButton:false,
  533. showClose:false,
  534. type: 'warning'
  535. }).then(() => {
  536. this.dialogVisible = false
  537. this.createNow = false
  538. this.amount = 0
  539. this.orig_amount = 0
  540. this.coupon_amount = 0
  541. this.userLeader = ''
  542. this.form.remarks = ''
  543. this.accountNum = 0
  544. this.usAccountNum = 0
  545. this.isleader = 0
  546. }).catch(() => {
  547. });
  548. }
  549. }
  550. },
  551. onClose(){
  552. this.dialogVisible = false
  553. this.createNow = false
  554. this.userLeader = ''
  555. this.form.remarks = ''
  556. this.amount = 0
  557. this.orig_amount = 0
  558. this.coupon_amount = 0
  559. this.accountNum = 0
  560. this.usAccountNum = 0
  561. },
  562. /*可使用优惠券*/
  563. async queryCoupon(){
  564. const res = await this.$api.requested({
  565. "id": 20230801162402,
  566. "content": {},
  567. })
  568. this.couponList = res.data
  569. }
  570. },
  571. created() {
  572. this.tablecolsAccount = this.tool.tabelCol(this.$route.name).accountTable.tablecols
  573. this.tablecolsMain = this.tool.tabelCol(this.$route.name).mainBodyTable.tablecols
  574. this.tablecolsVersion = this.tool.tabelCol(this.$route.name).versionTable.tablecols
  575. }
  576. }
  577. </script>
  578. <style>
  579. .card{
  580. display: flex;
  581. align-items: center;
  582. margin: 15px 0 10px 0;
  583. width: 100%;
  584. height: 50px;
  585. padding: 10px 0;
  586. background: #fff;
  587. border-radius: 8px;
  588. -webkit-mask-image: radial-gradient(circle at 88px 4px, transparent 4px, red 4.5px),radial-gradient(closest-side circle at 50%, red 99%, transparent 100%);
  589. -webkit-mask-size: 100%, 2px 4px;
  590. -webkit-mask-repeat: repeat, repeat-y;
  591. -webkit-mask-position: 0 -4px, 87px;
  592. -webkit-mask-composite: source-out;
  593. mask-composite: subtract;
  594. background: linear-gradient(45deg, orange, red);
  595. }
  596. .card-left{
  597. width: 88px;
  598. text-align: center;
  599. font-size: 18px;
  600. color: #fff;
  601. }
  602. .card-right{
  603. padding: 16px 12px;
  604. display: flex;
  605. flex: 1;
  606. flex-direction: column;
  607. }
  608. .card-info{
  609. margin: 0 0 10px 0;
  610. font-size: 14px;
  611. line-height: 20px;
  612. color:#fff;
  613. }
  614. .card-time{
  615. font-size: 12px;
  616. line-height: 16px;
  617. font-weight: normal;
  618. color: #fff;
  619. margin-top: 4px;
  620. }
  621. </style>
  622. <style scoped>
  623. /deep/ .el-dialog__title {
  624. line-height: 24px;
  625. font-size: 16px;
  626. color: #303133;
  627. font-weight: bold;
  628. }
  629. .pay_border{
  630. background: #FFF9F2;
  631. height: 30px;
  632. vertical-align: center;
  633. line-height: 30px
  634. }
  635. .pay_font{
  636. color: #FA8C16;
  637. margin-left: 10px;
  638. font-size: 17px;
  639. font-weight: bold;
  640. }
  641. .div_top{
  642. margin-top: 20px;
  643. }
  644. </style>