index.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764
  1. <template>
  2. <view class="main">
  3. <NavBar :user-info="userInfo" :work-Status="workStatus" @update-user="updateUser" />
  4. <view class="body">
  5. <view class="tab-box">
  6. <view class="tab-bar">
  7. <view class="tab_item" v-for="(tab, index) in tabList" :key="index"
  8. :class="{'active':tabActive==index}" @click="checkIndex(index)">
  9. <text class="text">{{tab.title}}{{tabActive===0 && index==0 && orderList.length>0?"("+orderList.length+")":""}}</text>
  10. </view>
  11. </view>
  12. <view class="search-bar">
  13. <view v-if="tabActive === 0" class="today">
  14. <view class="search">
  15. <uni-easyinput prefixIcon="search" v-model="searchVal" placeholder="请输入姓名" />
  16. </view>
  17. <button type="primary" @click="handleSearch" class="search-button">搜 索</button>
  18. <button type="primary" :disabled="workStatus==='1'?false:true" @click="handleRefresh" :class="workStatus==='1'?'refresh':'refresh active'">一键释放</button>
  19. </view>
  20. <view v-else class="history">
  21. <view class="searchchoice">
  22. <view class="row1">
  23. <view class="timequan">
  24. <text class="time_t">时间区间:</text>
  25. <uni-datetime-picker v-model="searchTime[0]" placeholder="开始时间" type="datetime" :hide-second="true" class="datepick"/>
  26. <uni-datetime-picker v-model="searchTime[1]" placeholder="结束时间" type="datetime" :hide-second="true" class="datepick"/>
  27. <!-- <timeSlot
  28. ref="timeslot"
  29. :title="'选择时间段'"
  30. @confirm="confirmTime">
  31. </timeSlot> -->
  32. <!-- <el-date-picker
  33. v-model="searchTime"
  34. type="datetimerange"
  35. range-separator="-"
  36. start-placeholder="开始时间"
  37. end-placeholder="结束时间"
  38. /> -->
  39. </view>
  40. </view>
  41. <view class="row2">
  42. <view class="office">
  43. <view class="time_t">
  44. 科室:
  45. </view>
  46. <picker @change="handleGetOffice" placeholder="请选择" :value="officeIndex" :range="officeArr">
  47. <view class="uni-input">{{officeArr[officeIndex]}}</view>
  48. </picker>
  49. </view>
  50. <view class="presid">
  51. <picker @change="handleGetType" :value="typeIndex" :range="typeArr">
  52. <view class="uni-input">{{typeArr[typeIndex]}}</view>
  53. </picker>
  54. </view>
  55. <view v-if="typeIndex === 0" class="search">
  56. <uni-easyinput prefixIcon="search" v-model="searchName" placeholder="请输入姓名" />
  57. </view>
  58. <view v-else class="search">
  59. <uni-easyinput prefixIcon="search" v-model="searchPreNo" placeholder="请输入处方号" />
  60. </view>
  61. <button type="primary" @click="handleSearch" class="search-button">搜索</button>
  62. </view>
  63. <view class="row3">
  64. <view class="tag-view" v-for="(v, i) in tags" :key="i">
  65. <uni-tag :circle="true" :inverted="!searchTags.includes(v)" :text=v @click="handleGetTags(v)" />
  66. </view>
  67. </view>
  68. </view>
  69. </view>
  70. </view>
  71. </view>
  72. <view class="tab-content">
  73. <view class="order-list">
  74. <scroll-view
  75. v-if="orderList.length > 0"
  76. class="order-list-wrap"
  77. scroll-y="true"
  78. :scroll-top="50"
  79. @scrolltoupper="loadPreList"
  80. @scrolltolower="loadMoreList"
  81. >
  82. <template v-for="(v,i) in orderList" :key="i">
  83. <orderCard v-if="v" :v="v" :work-Status="workStatus" :index="i" :c=tabActive class="order-card"
  84. @emit-select="emitSelect"
  85. />
  86. </template>
  87. </scroll-view>
  88. <view v-else class="text">
  89. <image class="zwsj" aspectFill :src="'/static/zwsj.png'" />
  90. </view>
  91. </view>
  92. <view v-if="isBottom" class="order-bottom">
  93. <view class="text">-- 没有更多数据 --</view>
  94. </view>
  95. </view>
  96. </view>
  97. </view>
  98. </template>
  99. <script setup>
  100. import NavBar from "@/components/nav-bar/nav-bar.vue"
  101. import OrderCard from "@/components/order-card/order-card.vue"
  102. import { onMounted,ref, getCurrentInstance } from 'vue'
  103. import { onLoad } from "@dcloudio/uni-app"
  104. import {receiveOrderList, selectDepartment } from "@/static/js/api.js"
  105. import {releaseOrder} from "@/static/js/request.js"
  106. // import { ID_INJECTION_KEY } from 'element-plus'
  107. const userInfo = ref({})
  108. const workStatus = ref('0')
  109. const tabList = ref([
  110. {title:"今日待完成", status: '0', leng:0},
  111. {title:"历史处方", status: '1'},
  112. ])
  113. const currentStatus = ref(0)
  114. const tabActive = ref(0) // 当前tab Index
  115. const tabName = ref('今日待完成') // 当前tab Name
  116. // const tags = ref([])
  117. const orderList = ref([
  118. {id:1,prescriptionTime:'2023-07-06 14:54', faceurl:'/static/hz.png',name:'张三三',sex: '女',age: 23,disName:'胃脘痛病',symName:'脾胃虚寒证',deployState:'调配',preNo:10230516091026,department:'中医内科',dosageForm:'汤剂',number:3,prescriptionSum:135.62,preMzZy:'1'},
  119. {id:2,prescriptionTime:'2023-07-06 14:54', faceurl:'/static/hz.png',name:'张三三',sex: '女',age: 23,disName:'胃脘痛病',symName:'脾胃虚寒证',deployState:'调配',preNo:10230516091026,department:'中医内科',dosageForm:'汤剂',number:3,prescriptionSum:135.62,preMzZy:'1'},
  120. {id:3,prescriptionTime:'2023-07-06 14:54', faceurl:'/static/hz.png',name:'张三三',sex: '女',age: 23,disName:'胃脘痛病',symName:'脾胃虚寒证',deployState:'调配',preNo:10230516091026,department:'中医内科',dosageForm:'汤剂',number:3,prescriptionSum:135.62,preMzZy:'2'},
  121. {id:4,prescriptionTime:'2023-07-06 14:54', faceurl:'/static/hz.png',name:'张三三',sex: '女',age: 23,disName:'胃脘痛病',symName:'脾胃虚寒证',deployState:'调配',preNo:10230516091026,department:'中医内科',dosageForm:'汤剂',number:3,prescriptionSum:135.62,preMzZy:'1'},
  122. {id:5,prescriptionTime:'2023-07-06 14:54', faceurl:'/static/hz.png',name:'张三三',sex: '女',age: 23,disName:'胃脘痛病',symName:'脾胃虚寒证',deployState:'调配',preNo:10230516091026,department:'中医内科',dosageForm:'汤剂',number:3,prescriptionSum:135.62,preMzZy:'2'}
  123. ])
  124. const isBottom = ref(false) // 是否触底
  125. const officeArr = ref(['全部'])
  126. const officeIndex = ref(0)
  127. const typeArr = ref(['姓名:','处方号:'])
  128. const typeIndex = ref(0)
  129. const searchVal = ref('')
  130. const searchTime =ref([])
  131. const searchDepartment = ref('')
  132. const searchName = ref('')
  133. const searchPreNo = ref('')
  134. const searchSex = ref('')
  135. const searchPreMzZy = ref('')
  136. const searchStatus = ref('')
  137. const searchPrescriptionStatus = ref('')
  138. const searchTags = ref([])
  139. const tags = ref(['全部','门诊','住院','男','女','煎煮','发药'])
  140. const deployArr = ref([
  141. {name:'抓药', id: '1' },
  142. {name:'复核', id: '2' },
  143. {name:'浸泡', id: '3' },
  144. {name:'煎煮', id: '4' },
  145. {name:'打包', id: '5' },
  146. ])
  147. const page = ref(1)
  148. const total = ref(0)
  149. const pageSize = ref(10)
  150. const status = ref('')
  151. const ids = ref([])
  152. const today =ref({
  153. leng: 0,
  154. })
  155. // app.provide(ID_INJECTION_KEY, {
  156. // prefix: Math.floor(Math.random() * 10000),
  157. // current: 0,
  158. // })
  159. const {proxy} = getCurrentInstance()
  160. onMounted(() => {
  161. })
  162. onLoad(async () => {
  163. const token = uni.getStorageSync('token')
  164. userInfo.value.name = uni.getStorageSync('username')
  165. workStatus.value = uni.getStorageSync('workStatus') || '0'
  166. const params = {
  167. token: token,
  168. data:JSON.stringify({
  169. currentUserId: parseInt(uni.getStorageSync('userId')) || 0,
  170. page: page.value,
  171. pageSize: pageSize.value,
  172. status: '0'
  173. })
  174. }
  175. const {data:res} = await receiveOrderList(params)
  176. if (res.code === 200) {
  177. total.value = res.total
  178. orderList.value = res.rows
  179. if(tabActive.value ==0){
  180. tabList.value[0].leng = orderList.value.length
  181. }
  182. }
  183. })
  184. const reset = ()=>{
  185. searchTime.value =[]
  186. officeIndex.value =0
  187. searchName.value =''
  188. searchPreNo.value =''
  189. searchSex.value =''
  190. searchPreMzZy.value =''
  191. searchStatus.value =''
  192. searchVal.value = ''
  193. officeArr.value = ['全部']
  194. }
  195. // 子传父,更新userInfo
  196. const updateUser = (v)=>{
  197. console.log('updateUserStatus', v)
  198. workStatus.value = v+''
  199. console.log('workStatus.value', workStatus.value)
  200. }
  201. const emitSelect = (v)=>{
  202. console.log('emitSelect', v)
  203. // 查在ids中查找v,如果存在就删除,如果不存在就添加
  204. const index = ids.value.findIndex(x=>x==v)
  205. if (index>-1){
  206. ids.value.splice(index, 1)
  207. } else {
  208. ids.value.push(v)
  209. }
  210. }
  211. const handleSearch = async()=>{
  212. if(tabActive.value ===0) {
  213. const params = {
  214. token: uni.getStorageSync('token'),
  215. data: JSON.stringify({
  216. currentUserId: parseInt(uni.getStorageSync('userId')) || 0,
  217. name: searchVal.value.trim(),
  218. page: page.value,
  219. pageSize: pageSize.value,
  220. status: tabList.value[tabActive.value].status,
  221. })
  222. }
  223. const {data:res} = await receiveOrderList(params)
  224. if (res.code === 200) {
  225. total.value = res.total
  226. orderList.value = res.rows
  227. }
  228. }
  229. if(tabActive.value==1){
  230. const params = {
  231. token: uni.getStorageSync('token'),
  232. data: JSON.stringify({
  233. currentUserId: parseInt(uni.getStorageSync('userId')) || 0,
  234. startTime: searchTime.value[0] || '',
  235. endTime: searchTime.value[1] || '',
  236. name: searchName.value.trim() || '',
  237. preNo: searchPreNo.value || '',
  238. department: officeArr.value[officeIndex.value] || '',
  239. prescriptionStatus: searchStatus.value || '',//煎煮发药
  240. sex: searchSex.value || '',
  241. preMzZy: searchPreMzZy.value || '',//门诊住院
  242. page: page.value,
  243. pageSize: pageSize.value,
  244. status: tabList.value[tabActive.value].status
  245. })
  246. }
  247. console.log('历史记录查询params',params)
  248. const {data:res} = await receiveOrderList(params)
  249. if (res.code === 200) {
  250. total.value = res.total
  251. orderList.value = res.rows
  252. if(tabActive.value ==0){
  253. tabList.value[0].leng = orderList.value.length
  254. }
  255. }
  256. }
  257. }
  258. const handleRefresh = async()=>{
  259. console.log('yijianshifang >orderList>>', orderList.value)
  260. // let ids = ''
  261. // orderList.value.forEach((v)=>{if(v.id){
  262. // ids= ids+v.id+','
  263. // console.log('yijianshifang >orderList>>',ids)
  264. // }})
  265. // console.log('yijianshifang >orderList>>666',ids)
  266. const params = {
  267. token: uni.getStorageSync('token'),
  268. data:{ids:ids.value.toString()}
  269. }
  270. console.log('handleRefresh >params>>666',params)
  271. const {data:res} = await releaseOrder(params)
  272. if (res.code === 200) {
  273. if(ids.value.length>0){
  274. console.log('ids.value',ids.value)
  275. ids.value.forEach(x=>{
  276. console.log('orderList',orderList.value)
  277. const index = orderList.value.findIndex(y=>y.id == x)
  278. console.log('orderList index',index)
  279. if(index>-1){
  280. console.log('orderList',orderList.value)
  281. orderList.value.splice(index,1)
  282. console.log('orderList',orderList.value)
  283. }
  284. })
  285. ids.value = []
  286. }
  287. }
  288. }
  289. const handleGetOffice = (e)=>{
  290. console.log('handleGetOffice', e.detail.value)
  291. console.log('officeIndex', officeIndex)
  292. console.log('officeIndex', officeIndex)
  293. officeIndex.value = e.detail.value
  294. }
  295. const handleGetType = (e)=>{
  296. console.log('handleGetType', e.detail.value)
  297. console.log('typeIndex', typeIndex)
  298. console.log('typeArr', typeIndex)
  299. typeIndex.value = e.detail.value
  300. if(typeIndex.value ===1 ){
  301. searchName.value = ''
  302. } else {
  303. searchPreNo.value = ''
  304. }
  305. }
  306. const handleGetTags = (v)=>{
  307. console.log('handleGetTags', v)
  308. if(!searchTags.value.includes(v)) {
  309. searchTags.value.push(v)
  310. } else {
  311. searchTags.value.splice(searchTags.value.indexOf(v), 1)
  312. }
  313. switch (v) {
  314. case '全部':
  315. if(searchTags.value.includes(v)){
  316. searchTags.value = ['全部']
  317. searchTime.value = []
  318. searchDepartment.value = ''
  319. searchName.value = ''
  320. searchPreNo.value = ''
  321. searchSex.value = ''
  322. searchPreMzZy.value = ''
  323. searchStatus.value = ''
  324. }
  325. break
  326. case '门诊':
  327. if(searchTags.value.includes(v) && searchTags.value.includes('住院')){
  328. searchTags.value.splice(searchTags.value.indexOf('住院'), 1)
  329. }
  330. if(searchTags.value.includes('全部')){
  331. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  332. }
  333. searchPreMzZy.value = '1'
  334. break
  335. case '住院':
  336. if(searchTags.value.includes(v) && searchTags.value.includes('门诊')){
  337. searchTags.value.splice(searchTags.value.indexOf('门诊'), 1)
  338. }
  339. if(searchTags.value.includes('全部')){
  340. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  341. }
  342. searchPreMzZy.value = '2'
  343. break
  344. case '男':
  345. if(searchTags.value.includes(v) && searchTags.value.includes('女')){
  346. searchTags.value.splice(searchTags.value.indexOf('女'), 1)
  347. }
  348. if(searchTags.value.includes('全部')){
  349. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  350. }
  351. searchSex.value = '男'
  352. break
  353. case '女':
  354. if(searchTags.value.includes(v) && searchTags.value.includes('男')){
  355. searchTags.value.splice(searchTags.value.indexOf('男'), 1)
  356. }
  357. if(searchTags.value.includes('全部')){
  358. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  359. }
  360. searchSex.value = '女'
  361. break
  362. case '煎煮':
  363. if(searchTags.value.includes(v) && searchTags.value.includes('发药')){
  364. searchTags.value.splice(searchTags.value.indexOf('发药'), 1)
  365. }
  366. if(searchTags.value.includes('全部')){
  367. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  368. }
  369. searchStatus.value = '2'
  370. break
  371. case '发药':
  372. if(searchTags.value.includes(v) && searchTags.value.includes('煎煮')){
  373. searchTags.value.splice(searchTags.value.indexOf('煎煮'), 1)
  374. }
  375. if(searchTags.value.includes('全部')){
  376. searchTags.value.splice(searchTags.value.indexOf('全部'), 1)
  377. }
  378. searchStatus.value = '3'
  379. break
  380. default:
  381. searchTags.value = ['全部']
  382. }
  383. }
  384. // 更新处方列表
  385. const checkIndex = async(index) => {
  386. tabActive.value = index
  387. page.value= 1
  388. console.log('index',index)
  389. ids.value = []
  390. reset()
  391. tabName.value = tabList.value[index].title
  392. currentStatus.value = parseInt(tabList.value[index].status)
  393. const token = uni.getStorageSync('token')
  394. const paramss = {
  395. token: uni.getStorageSync('token'),
  396. data:JSON.stringify({
  397. currentUserId: parseInt(uni.getStorageSync('userId')),
  398. page: page.value,
  399. pageSize: pageSize.value,
  400. status: tabList.value[tabActive.value].status
  401. })
  402. }
  403. console.log('checkIndex params',paramss)
  404. const {data:res} = await receiveOrderList(paramss)
  405. if (res.code === 200) {
  406. total.value = res.total
  407. orderList.value = res.rows
  408. if(tabActive.value ==0){
  409. tabList.value[0].leng = orderList.value.length
  410. }
  411. }
  412. if(tabActive.value==1) {
  413. const param = {
  414. token: uni.getStorageSync('token'),
  415. // data:JSON.stringify({
  416. // currentUserId: parseInt(uni.getStorageSync('userId')),
  417. // page: page.value,
  418. // pageSize: pageSize.value,
  419. // status: tabList.value[tabActive.value].status
  420. // })
  421. }
  422. console.log('checkIndex param',param)
  423. const {data:res} = await selectDepartment(param)
  424. if (res.code === 200) {
  425. officeArr.value.push(...res.data)
  426. console.log('selectDepartment officeArr.value', officeArr.value)
  427. }
  428. }
  429. }
  430. const openTime = ()=>{
  431. proxy.$refs.timeslot.open()
  432. }
  433. const loadMoreList =async()=>{
  434. console.log('loadMoreList>>>')
  435. if(isBottom){
  436. return
  437. }
  438. page.value = page.value +1
  439. const params = {
  440. token: uni.getStorageSync('token'),
  441. data: JSON.stringify({
  442. currentUserId: parseInt(uni.getStorageSync('userId')) || 0,
  443. name: searchVal.value,
  444. page: page.value,
  445. pageSize: pageSize.value,
  446. status: tabActive.value + ''
  447. })
  448. }
  449. const {data:res} = await receiveOrderList(params)
  450. console.log('orderList.value before',orderList.value)
  451. if (res.code === 200) {
  452. total.value = res.total
  453. if(total.value< pageSize.value){
  454. isBottom.value = true
  455. }
  456. console.log('res.rows after',res.rows)
  457. res.rows.forEach(item=>{
  458. orderList.value.push(item)
  459. })
  460. console.log('orderList.value after',orderList.value)
  461. if(tabActive.value ==0){
  462. console.log('tabActive===',)
  463. tabList.value[0].leng = orderList.value.length
  464. }
  465. }
  466. }
  467. const loadPreList = async()=>{
  468. console.log('loadPreList>>>')
  469. page.value = 1
  470. const params = {
  471. token: uni.getStorageSync('token'),
  472. data: JSON.stringify({
  473. currentUserId: parseInt(uni.getStorageSync('userId')) || 0,
  474. name: searchVal.value,
  475. page: page.value,
  476. pageSize: pageSize.value,
  477. status: tabList.value[tabActive.value].status
  478. })
  479. }
  480. const {data:res} = await receiveOrderList(params)
  481. if (res.code === 200) {
  482. total.value = res.total
  483. orderList.value = res.rows
  484. if(tabActive ==0){
  485. tabList.value[0].leng = orderList.value.length
  486. }
  487. }
  488. }
  489. </script>
  490. <style lang="scss">
  491. .main {
  492. display: flex;
  493. flex-direction:column;
  494. justify-content:flex-start;
  495. // height: 2000px;
  496. width: 750rpx;
  497. .nav{
  498. display: flex;
  499. height:74.34rpx;
  500. width: 750rpx;
  501. // position: sticky;
  502. // top: 0;
  503. }
  504. .body{
  505. display: flex;
  506. height:calc(100% - 74.34rpx);
  507. flex-direction:column;
  508. justify-content:flex-start;
  509. .tab-box {
  510. display: flex;
  511. position: sticky;
  512. flex-direction:column;
  513. z-index: 100;
  514. .tab-bar{
  515. height: 62.5rpx;
  516. display: flex;
  517. justify-content:center;
  518. width: 100%;
  519. // border: 1px solid #000;
  520. .tab_item{
  521. display: flex;
  522. flex:1;
  523. justify-content:center;
  524. align-items: center;
  525. font-size: 17.5rpx;
  526. background-color: #fff;
  527. color: #000;
  528. }
  529. .active{
  530. border-bottom: 5rpx solid #18C7B0;
  531. }
  532. }
  533. .search-bar{
  534. display: flex;
  535. background-color: #fff;
  536. border-radius: 4rpx;
  537. .today{
  538. display: flex;
  539. flex-direction:row;
  540. justify-content: flex-start;
  541. .search{
  542. width: 453.75rpx;
  543. margin: 13.75rpx 10.1rpx;
  544. :deep(.uni-easyinput__placeholder-class){
  545. font-size: 15rpx;
  546. }
  547. }
  548. .search-button{
  549. display: flex;
  550. justify-content:center;
  551. align-items: center;
  552. width:112.5rpx;
  553. margin: 13.75rpx 10.1rpx;
  554. font-size: 15rpx;
  555. background-color: #18C7B0;
  556. }
  557. .refresh {
  558. display: flex;
  559. justify-content:center;
  560. align-items: center;
  561. width:120rpx;
  562. margin: 13.75px 8rpx;
  563. font-size: 15rpx;
  564. background-color: #18C7B0;
  565. }
  566. .active{
  567. background-color:#DEDEDE;
  568. }
  569. }
  570. .history{
  571. display: flex;
  572. width: 100%;
  573. .searchchoice{
  574. padding: 0 10rpx;
  575. display: flex;
  576. width: 100%;
  577. flex-direction:column;
  578. font-size: 24rpx;
  579. .row1{
  580. display: flex;
  581. width: 100%;
  582. justify-content:flex-start;
  583. align-items: center;
  584. margin: 10rpx 0 10rpx;
  585. font-size: 15rpx;
  586. .timequan{
  587. display: flex;
  588. justify-content:center;
  589. align-items: center;
  590. :deep(.uni-date__x-input){
  591. font-size: 15rpx;
  592. }
  593. .datepick {
  594. z-index: 999;
  595. width: 300rpx;
  596. margin:0 10rpx;
  597. }
  598. }
  599. }
  600. .row2{
  601. display: flex;
  602. width: 100%;
  603. justify-content:flex-start;
  604. align-items: center;
  605. margin: 0 0 10rpx;
  606. .office{
  607. display: flex;
  608. justify-content:center;
  609. align-items: center;
  610. font-size: 15rpx;
  611. .uni-input{
  612. display: flex;
  613. justify-content:center;
  614. align-items: center;
  615. border:1px solid #e1e5f1;
  616. // font-size: 15rpx;
  617. width:190rpx;
  618. // height: 40rpx;
  619. border-radius: 5rpx;
  620. background-color: #e1e5f1;
  621. margin-right: 10rpx;
  622. }
  623. }
  624. .uni-input{
  625. display: flex;
  626. justify-content:center;
  627. align-items: center;
  628. border:1px solid #e1e5f1;
  629. font-size: 15rpx;
  630. width:100rpx;
  631. height: 40rpx;
  632. border-radius: 5rpx;
  633. background-color: #e1e5f1;
  634. margin-right: 10rpx;
  635. }
  636. .search{
  637. width: 187.5rpx;
  638. // height: 40rpx;
  639. // :deep(.easyinput__content-input){
  640. // // height: 40rpx!important;
  641. // }
  642. :deep(.uni-easyinput__placeholder-class){
  643. font-size: 14rpx;
  644. }
  645. }
  646. .search-button{
  647. display: flex;
  648. justify-content:center;
  649. align-items: center;
  650. width:120rpx;
  651. margin: 8rpx 12rpx;
  652. font-size: 14rpx;
  653. height: 40rpx!important;
  654. color: #fff;
  655. background-color: #18C7B0;
  656. }
  657. }
  658. .row3{
  659. display: flex;
  660. width: 100%;
  661. justify-content:flex-start;
  662. align-items: center;
  663. margin: 0 0 18rpx;
  664. .tag-view:deep(.uni-tag){
  665. display: inline;
  666. font-size: 15rpx;
  667. font-weight:500;
  668. margin-right: 16.67rpx;
  669. // height: 40px;
  670. width: 120rpx;
  671. padding: 6rpx 20rpx;
  672. }
  673. }
  674. }
  675. }
  676. }
  677. }
  678. .tab-content{
  679. display: flex;
  680. margin: 8rpx 10rpx;
  681. border-radius: 4rpx;
  682. background-color: #fff;
  683. width: calc(100% - 20rpx);
  684. height: 980rpx;
  685. z-index:10;
  686. .order-list{
  687. padding: 8rpx;
  688. display: flex;
  689. width: 100%;
  690. // height: 100%;
  691. .text{
  692. display: flex;
  693. width: 750rpx;
  694. justify-content:center;
  695. align-items: flex-start;
  696. .zwsj {
  697. margin-top: 103.13rpx;
  698. width: 640.63rpx;
  699. height: 310rpx;
  700. }
  701. }
  702. .order-list-wrap{
  703. display: flex;
  704. .order-card{
  705. display: flex;
  706. width: 100%;
  707. // border-bottom: 1px solid #e6e8ee;;
  708. }
  709. }
  710. }
  711. }
  712. }
  713. }
  714. </style>