detail.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938
  1. <template>
  2. <view class="main">
  3. <uni-nav-bar dark :fixed="true" background-color="#18C7B0" status-bar left-icon="left" height="62.5rpx" width="750rpx"
  4. title="处方详情" @clickLeft="handleBack"
  5. />
  6. <scroll-view class="content" scroll-y="true">
  7. <view class="header">
  8. <view class="ti">
  9. <view class="left">
  10. <view class="baracode">
  11. <w-barcode :options="preseObj"></w-barcode>
  12. <view class="barnum">{{v.preNo}}</view>
  13. </view>
  14. </view>
  15. <view class="mid">
  16. <!-- <text class="title">{{v.preName}}</text> -->
  17. <text class="title">中药处方笺</text>
  18. </view>
  19. <view class="rig"><text class="title">{{v.type=='1'?"中药处方":v.type=='1'?"中药制剂":""}}</text></view>
  20. </view>
  21. <view class="patiinfo">
  22. <view class="r1">
  23. <view class="row"><span class="we">姓名:</span>{{v.name}}</view>
  24. <view class="row"><span class="we">性别:</span>{{v.sex}}</view>
  25. <view class="row"><span class="we">年龄:</span>{{v.age}}岁</view>
  26. <view class="row"><span class="we">电话:</span>{{v.contactNumber}}</view>
  27. <!-- 20231222隐藏,因为处方状态后端返回state数据不对 -->
  28. <!-- <view class="row"><span class="we">当前处方状态:</span>{{v.state=="1"?"配药":v.state=="2"?"煎药":v.state=="3"?"发药":v.state=="4"?"配送":""}}</view> -->
  29. </view>
  30. <view class="r2">
  31. <view class="row"><span class="we">就诊科室:</span>{{v.department}}</view>
  32. <!-- <view class="row"><span class="we">临床诊断:</span>{{v.disName}}—{{v.symName}}</view> -->
  33. <view class="row"><span class="we">临床诊断:</span>{{v.disName}}</view>
  34. <view class="row"><span class="we">开方时间:</span>{{v.prescriptionTime}}</view>
  35. </view>
  36. <view class="r3"><span class="we">联系地址:</span>{{v.address}}</view>
  37. </view>
  38. </view>
  39. <view class="rp">
  40. <view class="title">
  41. <text class="text">Rp:</text>
  42. </view>
  43. <view class="lists">
  44. <view class="item" v-for="(x, i) in v.rp" :key="i">
  45. <view class="le tag-view">
  46. <view style="width: 24rpx;font-size: 22rpx;">{{x.yphjh}}</view>
  47. <view style="width: 170rpx;margin-left: 10rpx;">{{x.matName}}</view>
  48. <view style="width: 50rpx;font-size: 22rpx;">{{x.matDose+x.matUnitName}}</view>
  49. </view>
  50. <view class="rig">
  51. <view class="up"> {{x.matUsageName}}</view>
  52. <!-- <view class="do"> {{x.sign}}</view> -->
  53. </view>
  54. </view>
  55. </view>
  56. <view class="footer">
  57. <view class="js">
  58. 剂数:{{v.number}}
  59. </view>
  60. <view class="js">{{v.frequency}}</view>
  61. <view class="freque">{{v.medicationTime}}</view>
  62. </view>
  63. <view class="rp-tips">{{v.entrust}}</view>
  64. </view>
  65. <view class="amountarea">
  66. <view class="amount">
  67. <view class="r1">
  68. <view class="pijw">药品金额:{{v.prescriptionSum}}</view>
  69. </view>
  70. <view class="r2">
  71. <view class="jyf">煎药费:{{v.daijianCost}}</view>
  72. <view class="psf">配送费:{{v.distributionCost}}</view>
  73. </view>
  74. <view class="r3">
  75. 总金额:{{v.prescriptionTotalSum}}
  76. </view>
  77. </view>
  78. <view class="service">
  79. <view class="kf"><span class="we">开方:</span>{{v.operateList[0].operater || ''}}</view>
  80. <view class="kf"><span class="we">审核:</span>{{v.operateList[1].operater || ''}}</view>
  81. <view class="kf"><span class="we">调配:</span>{{v.operateList[2].operater || ''}}</view>
  82. <view class="kf"><span class="we">复核:</span>{{v.operateList[3].operater || ''}}</view>
  83. <!-- <view class="kf"><span class="we">浸泡:</span>{{v.operateList[4].operater || ''}}</view>
  84. <view class="kf"><span class="we">煎煮:</span>{{v.operateList[5].operater || ''}}</view>
  85. <view class="kf"><span class="we">打包:</span>{{v.operateList[6].operater || ''}}</view> -->
  86. <view class="kf"><span class="we">发药:</span>{{v.operateList[7].operater || ''}}</view>
  87. </view>
  88. </view>
  89. <view class="comment">
  90. <view class="z">注:</view>
  91. <text>{{v.entrust1111}}</text>
  92. </view>
  93. </scroll-view>
  94. <view class="submit">
  95. <button type="primary" class="bu" @click="dialogConfirm">打印</button>
  96. </view>
  97. <view class="popup">
  98. <uni-popup ref="alertDialog" type="dialog">
  99. <uni-popup-dialog type="center" cancelText="不打印" confirmText="打印" title="打印标签" @confirm="dialogConfirm" @close="dialogClose">
  100. <view class="cotent" id="printMe">
  101. <view class="title">{{v.yljgName+'(中医院)' || '某中医院取药标签打印(门诊)'}}</view>
  102. <view class="body">
  103. <view class="lef">
  104. <view class="baracode">
  105. <w-barcode class="cav" :options="preseObj"></w-barcode>
  106. <view class="barnum">{{v.preNo}}</view>
  107. </view>
  108. </view>
  109. <view class="rig">
  110. <view class="hz">患者:<view class="bold">{{v.name}},{{v.sex}},{{v.age}}岁</view></view>
  111. <view class="hz">出生日期:<view class="bold">{{v.birth}}</view></view>
  112. </view>
  113. </view>
  114. </view>
  115. </uni-popup-dialog>
  116. </uni-popup>
  117. </view>
  118. <view class="popup">
  119. <uni-popup ref="printerDialog" type="dialog">
  120. <uni-popup-dialog type="center" cancelText="取消" confirmText="确认" title="设置打印机" @confirm="connectThenPrint" @close="cancelConfig">
  121. <view class="printconfig">
  122. <view style="font-size: 20rpx;">使用须知</view>
  123. <view style="font-size: 16rpx;color:brown;margin-bottom: 20rpx;">*使用前先连接wifi打印机</view>
  124. <uni-easyinput class="input" confirm-type="done" v-model="printInfo.ip" placeholder="请输入打印机ip地址" @confirm="connectThenPrint"></uni-easyinput>
  125. </view>
  126. </uni-popup-dialog>
  127. </uni-popup>
  128. <uni-popup ref="alertMessage" type="message">
  129. <uni-popup-message type="warn" message="您有一个新的处方" :duration="2000"></uni-popup-message>
  130. </uni-popup>
  131. </view>
  132. </view>
  133. </template>
  134. <script>
  135. export default {
  136. name: ''
  137. }
  138. </script>
  139. <script setup>
  140. import { onMounted, ref, getCurrentInstance } from 'vue'
  141. import { selectOrderDetail } from "@/static/js/request.js"
  142. import { onLoad } from '@dcloudio/uni-app'
  143. import debounce from 'lodash.debounce'
  144. const isPrint = ref(true)
  145. const initPrint =ref(uni.getStorageSync('initPrint'))
  146. const {proxy} = getCurrentInstance()
  147. // #ifdef APP-PLUS
  148. const plug= uni.requireNativePlugin('Html5app-Gprinter');
  149. // #endif
  150. const preseId = ref(11220822134401)
  151. const preseObj = ref({
  152. code: '',
  153. color:['#000'],
  154. bgColor: '#FFFFFF',
  155. width: 200,
  156. height: 50
  157. })
  158. const imageStyles =ref({
  159. width:112.5,
  160. height:112.5,
  161. border:{
  162. color:"#DDDDDD",
  163. width:1,
  164. style:'solid',
  165. radius:'4px'
  166. }
  167. })
  168. const depolyImage = ref([])
  169. const barOpations = ref({
  170. height: 80,
  171. displayValue: false
  172. })
  173. const v=ref({
  174. preNo:'',
  175. preMzZy:'',
  176. pharmacistsremarks:'药师备注',
  177. presType:'',
  178. name:'',//'李某',
  179. sex:'',
  180. age:0,
  181. contactNumber:'',
  182. preName:'',
  183. state: '',
  184. department:'',
  185. bed_no:'床位号',
  186. disName:'',
  187. symName:'',
  188. prescriptionTime:'',
  189. address:'',
  190. printTime:'',
  191. rp:[],
  192. number:0,
  193. isBehalf:'',
  194. pies_tips:'',
  195. dosageForm:'',
  196. prescriptionUsage:'',
  197. concentration:'',
  198. frequency:'',
  199. medicationTime:'',
  200. entrust:'',
  201. prescriptionSum: '',
  202. daijianCost:'',
  203. distributionCost:'',
  204. prescriptionTotleSum: '',
  205. yljgName:'',
  206. operateList:[
  207. {py:'kf',title:'开方',operater:''},
  208. {py:'sh',title:'审核',operater:''},
  209. {py:'tp',title:'调配',operater:''},
  210. {py:'fh',title:'复核',operater:''},
  211. {py:'jp',title:'浸泡',operater:''},
  212. {py:'jz',title:'煎煮',operater:''},
  213. {py:'db',title:'打包',operater:''},
  214. {py:'fy',title:'发药',operater:''},
  215. ],
  216. entrust1111:'1、本处方当日有效\n 2、取药时请您当面核对药品名称、规格、数量 \n 3、延长处方用量时间原因:慢性病 其他老年病 外地 其他'
  217. })
  218. onMounted(() => {
  219. })
  220. onLoad(async(options) => {
  221. console.log('options', options)
  222. const userId = uni.getStorageSync('userId')
  223. const params = {
  224. token: uni.getStorageSync('token'),
  225. data: {
  226. id: options.id || '',
  227. preNo: options.preId || '',
  228. depolyStatus: options.depolyStatus || ''
  229. }
  230. }
  231. console.log("params--------->>>",params)
  232. const {data:res} = await selectOrderDetail(params)
  233. if (res.code === 200) {
  234. console.log("res>>>",res)
  235. v.value.prescriptionTime = res.data.prescriptionTime,
  236. v.value.name = res.data.name,
  237. v.value.sex = res.data.sex,
  238. v.value.age = res.data.age,
  239. v.value.contactNumber = res.data.contactNumber
  240. v.value.preName = res.data.preName
  241. v.value.address = res.data.address
  242. v.value.concentration = res.data.concentration
  243. v.value.frequency = res.data.frequency
  244. v.value.medicationTime = res.data.medicationTime
  245. v.value.disName = res.data.disName,
  246. v.value.symName = res.data.symName,
  247. v.value.preNo = res.data.preNo,
  248. preseObj.value.code = v.value.preNo
  249. v.value.preMzZy = res.data.preMzZy
  250. v.value.pharmacistsremarks = res.data.pharmacistsremarks
  251. v.value.department = res.data.department,
  252. v.value.bed_no = res.data.bedNo
  253. v.value.dosageForm = res.data.dosageForm,
  254. v.value.prescriptionUsage = res.data.prescriptionusage,
  255. v.value.number = res.data.number,
  256. v.value.isBehalf = res.data.isBehalf,
  257. v.value.prescriptionSum = res.data.prescriptionSum,
  258. v.value.prescriptionTotalSum = res.data.prescriptionTotalSum,
  259. v.value.daijianCost = res.data.daijianCost,
  260. v.value.distributionCost = res.data.distributionCost,
  261. v.value.prescriptionTotleSum = res.data.prescriptionTotleSum,
  262. v.value.birth = res.data.patientBirthday || ''
  263. v.value.printTime = res.data.printTime
  264. v.value.entrust = res.data.entrust,
  265. v.value.rp = res.data.detailList
  266. v.value.yljgName = res.data.yljgName || ''
  267. v.value.state = res.data.state,
  268. console.log('》》》》》res.data',res.data)
  269. switch (res.data.state) {
  270. case '1':
  271. v.value.state = '配药'
  272. break
  273. case '2':
  274. v.value.state = '煎药'
  275. break
  276. case '3':
  277. v.value.state = '发药'
  278. break
  279. case '4':
  280. v.value.state = '配送'
  281. break
  282. case '5':
  283. v.value.state = '已分配'
  284. break
  285. case '6':
  286. v.value.state = '已传送'
  287. break
  288. default:
  289. v.value.state = '配药'
  290. }
  291. v.value.operateList[0].operater = res.data.doctor || ''
  292. // v.value.operateList[1].operater = res.data.checkBy || ''
  293. // v.value.operateList[2].operater = res.data.tiaopeiName || ''
  294. // 循环operateList
  295. const length = res.data.operateList.length
  296. if(length > 0){
  297. res.data.operateList.forEach((item)=>{
  298. switch(item.type){
  299. case '1':
  300. v.value.operateList[1].operater = item.createBy
  301. break
  302. case '2':
  303. v.value.operateList[2].operater = item.createBy
  304. break
  305. case '3':
  306. v.value.operateList[3].operater = item.createBy
  307. break
  308. case '16':
  309. v.value.operateList[4].operater = item.createBy
  310. break
  311. case '5':
  312. v.value.operateList[6].operater = item.createBy
  313. break
  314. case '6':
  315. v.value.operateList[7].operater = item.createBy
  316. break
  317. defalut:console.log('处方签res.data.operateList数据异常',item.type)
  318. }
  319. })
  320. console.log('item>>>>>>',v.value.operateList)
  321. }
  322. }
  323. })
  324. const connectThenPrint = ()=>{
  325. const ipReg = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/
  326. if(ipReg.test(printInfo.value.ip)){
  327. if(RegExp.$1<256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256){
  328. uni.$showMsg('打印机连接成功!', 500)
  329. plug.connectIP({"ip":printInfo.value.ip,"port":printInfo.value.port},ret=>{
  330. const res = JSON.parse(JSON.stringify(ret))
  331. console.log('connectPrint>>res',res.code)
  332. if(res.code==3){
  333. uni.setStorageSync('hasPrinter', '1')
  334. uni.setStorageSync('printerIp', printInfo.value.ip)
  335. proxy.$refs.printerDialog.close()
  336. printerTsc()
  337. if(uni.getStorageSync('hasPrinter') == '1'){
  338. deploy()
  339. }
  340. } else{
  341. uni.$showMsg('打印机连接失败,请重试!', 500)
  342. }
  343. });
  344. } else{
  345. uni.$showMsg('ip地址有误,请重试!', 2000)
  346. }
  347. }
  348. }
  349. const handleBack =()=>{
  350. uni.navigateBack({
  351. delta: 1
  352. })
  353. }
  354. const dialogConfirm = debounce(async()=>{
  355. if(uni.getStorageSync('hasPrinter') == '1'){
  356. printerTsc()
  357. // const tmp = await deploy()
  358. uni.redirectTo({
  359. url:"/pages/index/index"
  360. })
  361. } else {
  362. proxy.$refs.printerDialog.open('center')
  363. }
  364. },500)
  365. const printerTsc = ()=>{
  366. let data=[];
  367. let line={};
  368. line={};
  369. line.width=80;
  370. line.height=50;
  371. line.gap=2;
  372. line.page=1;
  373. line.direction=0,
  374. data.push(line);
  375. let filePath=plus.io.convertLocalFileSystemURL("static/OpenSans-Bold.ttf")
  376. line={};
  377. line.customText=v.value.yljgName+'(中药房)';
  378. line.x=120;
  379. line.y=10;
  380. line.fontSize=14;
  381. line.fontPath='';
  382. data.push(line);
  383. // 患者姓名性别出生年月
  384. line={};
  385. line.customText=v.value.name+', '+v.value.sex+', '+v.value.birth;
  386. line.x=10;
  387. line.y=70;
  388. line.fontSize=10;
  389. line.fontPath='';
  390. data.push(line);
  391. // 门诊住院
  392. line={};
  393. line.customText=v.value.preMzZy==1 ? '门诊' : '住院';
  394. line.x=500;
  395. line.y=70;
  396. line.fontSize=10;
  397. line.fontPath='';
  398. data.push(line);
  399. // 条形码
  400. line={};
  401. line.barcode=v.value.preNo;
  402. line.x=15;
  403. line.y=110;
  404. line.type="CODE128";
  405. line.height=115;
  406. line.width=180;
  407. line.readable=true;
  408. line.rotation=0;
  409. data.push(line);
  410. line={};
  411. line.customText=v.value.preNo;
  412. line.x=15;
  413. line.y=225;
  414. line.fontSize=8;
  415. line.fontPath='';
  416. data.push(line);
  417. // 手机号
  418. line={};
  419. line.customText='手机号:'+v.value.contactNumber;
  420. line.x=250;
  421. line.y=110;
  422. line.fontSize=10;
  423. line.fontPath='';
  424. data.push(line);
  425. // 处方用法
  426. line={};
  427. line.customText='处方用法:'+v.value.prescriptionUsage;
  428. line.x=250;
  429. line.y=150;
  430. line.fontSize=10;
  431. line.fontPath='';
  432. data.push(line);
  433. line={};
  434. line.customText='剂数:'+v.value.number;
  435. line.x=250;
  436. line.y=190;
  437. line.fontSize=10;
  438. line.fontPath='';
  439. data.push(line);
  440. line={};
  441. if (v.value.isBehalf=='0') {
  442. line.customText='是否代煎:否';
  443. } else{
  444. line.customText='是否代煎:是';
  445. }
  446. line.x=385;
  447. line.y=190;
  448. line.fontSize=10;
  449. line.fontPath='';
  450. data.push(line);
  451. // 科室病房
  452. line={};
  453. if(v.value.bed_no!=null){
  454. line.customText='科室/病房:'+v.value.department+v.value.bed_no;
  455. }else{
  456. line.customText='科室/病房:'+v.value.department
  457. }
  458. line.x=15;
  459. line.y=260;
  460. line.fontSize=10;
  461. line.fontPath='';
  462. data.push(line);
  463. // 药师备注
  464. line={};
  465. if(v.value.pharmacistsremarks != null){
  466. line.customText='药师备注:'+v.value.pharmacistsremarks;
  467. }else{
  468. line.customText='药师备注:';
  469. }
  470. line.x=15;
  471. line.y=300;
  472. line.fontSize=10;
  473. line.fontPath='';
  474. data.push(line);
  475. line={};
  476. line.customText='打印时间:'+v.value.printTime;
  477. line.x=145;
  478. line.y=345;
  479. line.fontSize=8;
  480. line.fontPath='';
  481. data.push(line);
  482. // #ifdef APP-PLUS
  483. plug.printer({TSC:data}, (ret) => {
  484. const tip = JSON.stringify(ret);
  485. })
  486. // #endif
  487. }
  488. </script>
  489. <style lang="scss">
  490. .main {
  491. display: flex;
  492. flex-direction:column;
  493. justify-content:flex-start;
  494. width: 750rpx;
  495. :deep(.uni-nav-bar-text){
  496. font-size: 20px;
  497. }
  498. :deep(.uni-navbar-btn-text){
  499. font-size: 16px;
  500. }
  501. .content{
  502. margin: 5rpx;
  503. background-color: #fff;
  504. flex-direction:column;
  505. align-items: center;
  506. height:1050rpx;
  507. .header{
  508. display: flex;
  509. flex-direction:column;
  510. margin:16rpx 16rpx 0;
  511. .ti{
  512. display: flex;
  513. flex-direction:row;
  514. justify-content: space-between;
  515. margin-top: 15.22rpx;
  516. .left{
  517. align-items: flex-start;
  518. .baracode{
  519. display: flex;
  520. flex-direction:column;
  521. .barnum{
  522. font-size: 15rpx;
  523. display: flex;
  524. justify-content:center;
  525. align-items: center;
  526. letter-spacing: 0.3em;
  527. }
  528. }
  529. }
  530. .mid{
  531. display: flex;
  532. margin-right: 160rpx;
  533. .title{
  534. font-size: 23.75rpx;
  535. font-weight: 800;
  536. }
  537. }
  538. .rig{
  539. display: flex;
  540. .title{
  541. font-size: 16rpx;
  542. width: 40rpx;
  543. font-weight: 300;
  544. }
  545. }
  546. }
  547. .patiinfo{
  548. display: flex;
  549. flex-direction:column;
  550. margin-top: 25.2rpx;
  551. padding-bottom: 21.45rpx;
  552. border-bottom: 1px solid #979797;
  553. .r1{
  554. display: flex;
  555. flex-direction:row;
  556. margin-bottom:15rpx;
  557. .row{
  558. font-size: 15rpx;
  559. font-weight: 400;
  560. margin-right: 30rpx;
  561. }
  562. .we{
  563. color:#999999;
  564. }
  565. }
  566. .r2{
  567. display: flex;
  568. flex-direction:row;
  569. margin-bottom:15rpx;
  570. .row{
  571. font-size: 15rpx;
  572. font-weight: 400;
  573. margin-right: 30rpx;
  574. }
  575. .we{
  576. color:#999999;
  577. }
  578. }
  579. .r3{
  580. display: flex;
  581. flex-direction:row;
  582. font-size: 15rpx;
  583. .we{
  584. color:#999999;
  585. }
  586. }
  587. }
  588. }
  589. .rp{
  590. display: flex;
  591. flex-direction:column;
  592. margin:22.39rpx 17.36rpx 0;
  593. border-bottom: 1px solid #979797;
  594. .title{
  595. font-size: 22rpx;
  596. margin-bottom: 10rpx;
  597. }
  598. .lists{
  599. display: flex;
  600. flex-wrap: wrap;
  601. flex-direction: row;
  602. justify-content:flex-start;
  603. align-content:flex-start;
  604. margin-left:15rpx;
  605. // background-color: #999999;
  606. // height: 545rpx;
  607. // 处方明细单个小框
  608. .item{
  609. display: flex;
  610. // justify-content:center;
  611. // align-items: center;
  612. width: 345rpx;
  613. margin: 0 1rpx 20rpx 0;
  614. // background-color: yellow;
  615. // position: relative;
  616. // 药品内容
  617. .le{
  618. display: flex;
  619. // font-size: 24rpx;
  620. // width: 500rpx;
  621. // word-wrap: break-word;
  622. // z-index: 100;
  623. // position: absolute;
  624. }
  625. .tag-view{
  626. display: flex;
  627. // justify-content:center;
  628. align-items: center;
  629. font-size: 25rpx;
  630. // height: 22rpx;
  631. // line-height: 22rpx;
  632. font-weight:500;
  633. // width: 250rpx;
  634. padding: 6rpx 6rpx;
  635. }
  636. .rig{
  637. display: flex;
  638. // flex-direction:column;
  639. align-items: center;
  640. margin-left: 2rpx;
  641. // width: 200rpx;
  642. // z-index: 200;
  643. // position: absolute;
  644. // left:120rpx;
  645. .up{
  646. // margin-bottom:8rpx;
  647. font-size: 14rpx;
  648. // height: 12.5rpx;
  649. }
  650. .do{
  651. font-size: 12rpx;
  652. height: 12.5rpx;
  653. }
  654. }
  655. }
  656. }
  657. .footer{
  658. margin: 0 10rpx 8rpx;
  659. display: flex;
  660. font-size: 22rpx;
  661. .js{
  662. display: flex;
  663. margin-right: 54.4rpx;
  664. .pies_tips{}
  665. }
  666. .freque{}
  667. }
  668. .rp-tips{
  669. display: flex;
  670. justify-content:flex-end;
  671. font-size: 15rpx;
  672. margin-right: 10rpx;
  673. font-size: 22rpx;
  674. }
  675. }
  676. .amountarea{
  677. display: flex;
  678. margin: 21.3rpx 19.38px 0;
  679. padding-bottom: 20.94rpx;
  680. border-bottom: 1px solid #979797;
  681. .amount{
  682. display: flex;
  683. flex-direction:column;
  684. .r1{
  685. border: 1px solid #979797;
  686. font-size: 15rpx;
  687. width: 287.5rpx;
  688. display: flex;
  689. justify-content:center;
  690. align-items: center;
  691. height: 33.75rpx;
  692. }
  693. .r2{
  694. display: flex;
  695. justify-content:center;
  696. align-items: center;
  697. font-size: 15rpx;
  698. height: 33.75rpx;
  699. width: 287.5rpx;
  700. border-left: 1px solid #979797;
  701. border-right: 1px solid #979797;
  702. .jyf{
  703. width: 143.93rpx;
  704. display: flex;
  705. justify-content:center;
  706. align-items: center;
  707. }
  708. .psf{
  709. border-left: 1px solid #979797;
  710. width: 143.93rpx;
  711. display: flex;
  712. justify-content:center;
  713. align-items: center;
  714. }
  715. }
  716. .r3{
  717. display: flex;
  718. justify-content:center;
  719. align-items: center;
  720. height: 33.75rpx;
  721. font-size: 15rpx;
  722. border: 1px solid #979797;
  723. }
  724. }
  725. .service{
  726. display: flex;
  727. flex-wrap: wrap;
  728. margin-left: 50rpx;
  729. .kf{
  730. font-size: 15rpx;
  731. margin-right: 60rpx;
  732. width:115rpx;
  733. .we{
  734. font-size: 15rpx;
  735. color:#999999;
  736. }
  737. }
  738. }
  739. }
  740. .comment{
  741. margin: 10rpx 16rpx 10rpx;
  742. font-size: 15rpx;
  743. display: flex;
  744. }
  745. }
  746. .submit{
  747. display: flex;
  748. margin-top: 8rpx;
  749. background-color: #fff;
  750. align-items: center;
  751. width: 750rpx;
  752. height: 80rpx;
  753. .bu{
  754. display: flex;
  755. justify-content:center;
  756. align-items: center;
  757. height: 60rpx;
  758. width: 671.25rpx;
  759. font-size: 17.5rpx;
  760. border-radius: 3.75rpx;
  761. background-color: #18c7b0;
  762. color:#fff;
  763. }
  764. }
  765. :deep(.uni-popup-dialog){
  766. width: 500rpx;
  767. display: flex;
  768. flex-direction: column;
  769. background-color: #ffffff;
  770. .uni-dialog-title-text{
  771. display: flex;
  772. font-size: 20rpx;
  773. }
  774. .uni-dialog-content{
  775. display: flex;
  776. margin: 10rpx 20rpx;
  777. background-color: #fff;
  778. box-shadow: 0 0 20rpx rgba(0, 0, 0, 0.15);
  779. .cotent{
  780. display: flex;
  781. flex-direction: column;
  782. width:400rpx;
  783. height: 112.5rpx;
  784. .title{
  785. font-size: 17.5rpx;
  786. font-weight: 500;
  787. margin-bottom: 10rpx;
  788. display: flex;
  789. align-items: center;
  790. justify-content:center;
  791. }
  792. .body{
  793. display: flex;
  794. justify-content:center;
  795. .lef{
  796. display: flex;
  797. flex-direction: column;
  798. width: 200rpx;
  799. justify-content:center;
  800. .baracode{
  801. display: flex;
  802. flex-direction:column;
  803. width: 200rpx;
  804. height: 54.38rpx;
  805. .cav{
  806. width:200rpx;
  807. }
  808. .barnum{
  809. width:200rpx;
  810. font-size: 10rpx;
  811. display: flex;
  812. color: #333333;
  813. justify-content:center;
  814. align-items: center;
  815. letter-spacing: 0.7em;
  816. }
  817. }
  818. }
  819. .rig{
  820. display: flex;
  821. flex-direction: column;
  822. width: 340px;
  823. margin-left: 13.75rpx;
  824. .hz{
  825. display: flex;
  826. margin-bottom: 10rpx;
  827. font-size: 15rpx;
  828. }
  829. .bold{
  830. font-weight: 500;
  831. }
  832. }
  833. }
  834. }
  835. }
  836. .uni-dialog-button-group{
  837. display: flex;
  838. font-size: 17.5rpx;
  839. .uni-dialog-button{
  840. display: flex;
  841. .uni-dialog-button-text{
  842. }
  843. }
  844. .uni-border-left{
  845. .uni-dialog-button-text{
  846. color: #18c7b0;
  847. }
  848. }
  849. }
  850. }
  851. .printconfig{
  852. background-color: #fff;
  853. width: 500rpx;
  854. height: 100rpx;
  855. padding: 20rpx;
  856. .initPrint{
  857. .title{
  858. font-size: 20rpx;
  859. }
  860. .tips{
  861. font-size: 16rpx;
  862. }
  863. .input{
  864. width: 300rpx;
  865. }
  866. }
  867. }
  868. }
  869. </style>