index.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597
  1. <template>
  2. <div>
  3. <!-- 顶部条-->
  4. <div class="navBarTOP">
  5. <van-nav-bar
  6. class="navBar"
  7. title="大客户签约协议"
  8. left-arrow
  9. @click-left="onClickLeft"
  10. />
  11. </div>
  12. <!-- 主体内容-->
  13. <div class="lineGrey"></div>
  14. <div class="lineGrey"></div>
  15. <div class="lineGrey"></div>
  16. <div class="lineGrey"></div>
  17. <div class="lineGrey"></div>
  18. <div class="lineGrey"></div>
  19. <div class="container" style="width: 94%;margin: 0 auto;border-radius: 6px">
  20. <van-form ref="tabstoreVal">
  21. <div v-for="(item,index) in collectionItemList" :key="index">
  22. <div class="formLabel z-cell" v-if="item.answerType=='sz'">
  23. <van-cell>
  24. <template #title>
  25. <span class="van-f-red" v-if="item.isMust==0">*</span>{{item.collectionName}}
  26. </template>
  27. <template #right-icon >
  28. <span style="color:red;" v-if="item.isMustPicture=='0'">图片必填</span>
  29. <van-icon v-if="item.isPicture=='0'" name="photograph" size="24" color="#666" @click="imgClick(item,index)"/>
  30. </template>
  31. </van-cell>
  32. <van-field v-model="item.answerValue" type="number" @input="numberFn(item,index)" :placeholder="item.text"></van-field>
  33. <p style="color: #444;
  34. font-size: 12px;
  35. margin: 0;
  36. padding:10px 0;text-align: right">{{item.collectionOptionList[0].collectionOption}}</p>
  37. <delete-upload-img :imgs="item.fileInfoList"></delete-upload-img>
  38. </div>
  39. <div class="formLabel z-cell" v-if="item.answerType=='zp'">
  40. <van-cell>
  41. <template #title>
  42. <span class="van-f-red" v-if="item.isMust==0">*</span>{{item.collectionName}}
  43. </template>
  44. </van-cell>
  45. <van-uploader :after-read="afterRead" upload-text="照片上传"/>
  46. </div>
  47. <div class="formLabel z-cell" v-if="item.answerType=='wb'">
  48. <van-cell>
  49. <template #title>
  50. <span class="van-f-red" v-if="item.isMust==0">*</span>{{item.collectionName}}
  51. </template>
  52. <template #right-icon>
  53. <span style="color:red;" v-if="item.isMustPicture=='0'">图片必填</span>
  54. <van-icon v-if="item.isMustPicture==0" name="photograph" size="24" color="#666" @click="imgClick(item,index)"/>
  55. </template>
  56. </van-cell>
  57. <van-field v-model="item.answerValue" :placeholder="item.text" :formatter="formatter"></van-field>
  58. <p style="color: #444;
  59. font-size: 12px;
  60. margin: 0;
  61. padding:10px 0;text-align: right">{{item.collectionOptionList[0].collectionOption}}</p>
  62. <delete-upload-img :imgs="item.fileInfoList"></delete-upload-img>
  63. </div>
  64. <div class="formLabel z-cell" v-if="item.answerType=='duox'">
  65. <van-cell>
  66. <template #title>
  67. <span class="van-f-red" v-if="item.isMust==0">*</span>{{item.collectionName}}
  68. </template>
  69. <template #right-icon>
  70. <span style="color:red;" v-if="item.isMustPicture=='0'">图片必填</span>
  71. <van-icon v-if="item.isMustPicture==0" name="photograph" size="24" color="#666" @click="imgClick(item,index)"/>
  72. </template>
  73. </van-cell>
  74. <z-checkbox :checkboxval="item.answerValue" :collectionType="item.collectionType" :answerType="item.answerType" :textc="item.collectionCode"
  75. @zSelectVal="zSelectVal" :zCheckboxcolumns="item.collectionOptionList"></z-checkbox>
  76. <delete-upload-img :imgs="item.fileInfoList"></delete-upload-img>
  77. </div>
  78. <div class="formLabel z-cell" v-if="item.answerType=='dx'">
  79. <van-cell>
  80. <template #title>
  81. <span class="van-f-red" v-if="item.isMust==0">*</span>{{item.collectionName}}
  82. </template>
  83. <template #right-icon>
  84. <span style="color:red;" v-if="item.isMustPicture=='0'">图片必填</span>
  85. <van-icon v-if="item.isMustPicture==0" name="photograph" size="24" color="#666" @click="imgClick(item,index)"/>
  86. </template>
  87. </van-cell>
  88. <z-radio :radio="item.answerValue" :collectionType="item.collectionType" :textc="item.collectionCode"
  89. :answerType="item.answerType" @zSelectVal="zSelectVal" :zRadiocolumns="item.collectionOptionList"></z-radio>
  90. <delete-upload-img :imgs="item.fileInfoList"></delete-upload-img>
  91. </div>
  92. <br>
  93. </div>
  94. </van-form>
  95. </div>
  96. <div class="formLabel" style="margin:20px 16px;">
  97. <van-button block type="info" size="normal" style="background-color: #0057ba;" @click="onSubmit">提交</van-button>
  98. </div>
  99. <br>
  100. <van-dialog v-model="show" title="上传图片" show-cancel-button :show-confirm-button="false" >
  101. <van-field
  102. readonly
  103. clickable
  104. name="picker"
  105. :value="PhotoTypeText"
  106. placeholder="选择图片类型"
  107. @click="showPicker = true"
  108. v-if="indexselect=='1'"
  109. >
  110. <template #label>
  111. <span class="van-f-red">*</span>图片类型
  112. </template>
  113. </van-field>
  114. <van-cell>
  115. <template #title>
  116. <span class="van-f-red">*</span>拍照上传
  117. </template>
  118. <template #right-icon>
  119. <upload-img :uploadid="uploadid2" :visitModel="1+''" :shouws="true" @typeshow="typeshow" :visitsId="visitId"
  120. :objectType="PhotoType"
  121. :collectionId="collectionId"
  122. :taskId="taskId"
  123. :storeGroupId="storeGroupId"
  124. :imgArr="imgs"
  125. @newimgarr="newimgarr1"></upload-img>
  126. </template>
  127. </van-cell>
  128. </van-dialog>
  129. <van-popup v-model="sdsd" position="bottom">
  130. <upload-img :uploadid="uploadid2" @typeshow="typeshow" :visitsId="visitId" :objectType="PhotoType"
  131. :collectionId="collectionId"
  132. :taskId="taskId"
  133. :storeGroupId="storeGroupId"
  134. :imgArr="imgs"
  135. @newimgarr="newimgarr1"></upload-img>
  136. </van-popup>
  137. <van-popup v-model="showPicker" capture position="bottom">
  138. <van-picker
  139. show-toolbar
  140. :columns="PhotoTypeList"
  141. @confirm="onConfirm"
  142. @cancel="showPicker = false"
  143. />
  144. </van-popup>
  145. <van-dialog v-model="logshow" title="系统提示" show-cancel-button>
  146. 是否保存信息?
  147. </van-dialog>
  148. </div>
  149. </template>
  150. <script>
  151. import { getPhotoTypeList,addCollectionAnswer,getStoreGroupTask,editDwellTime } from "@/api/index";
  152. import zRadio from "@/components/zRadio";
  153. import zCheckbox from "@/components/zCheckbox";
  154. import uploadImg from "@/components/supervisortask";
  155. import deleteUploadImg from "@/components/deleteUploadImg1";
  156. export default {
  157. name: "abnormalVisit",
  158. components: {zRadio,zCheckbox,uploadImg,deleteUploadImg},
  159. data() {
  160. return {
  161. value:"",
  162. sdsd:false,
  163. showPicker:false,
  164. logshow:false,
  165. fromValue:{
  166. select1:"",
  167. select3:"",
  168. checkbox:"1",
  169. radio:"",
  170. input:""
  171. },
  172. timer:null,
  173. flagclick:true,
  174. isMust:"0",
  175. imgs:[],
  176. checkboxGroup: [],
  177. radio: '',
  178. uploadid2:'uploadid2',
  179. collectionItemList:[],
  180. rdId:"",
  181. show:false,
  182. PhotoTypeList:[],
  183. PhotoType:"",
  184. PhotoTypeText:"",
  185. indexselect:0,
  186. visitId:"",
  187. storeGroupId:"",
  188. taskId:"",
  189. collectionId:"",
  190. // form
  191. storeId:"",
  192. collectionAnswerlisd:[],
  193. tableData1: [],
  194. taskType:1,
  195. flag:false,
  196. indeximg:"",
  197. link:"3",
  198. }
  199. },
  200. activated() {
  201. this.flag=false
  202. this.link="3"
  203. this.taskType=this.$route.query.taskType
  204. this.PhotoType=this.$route.query.photoType
  205. this.storeCode=this.$route.query.storeCode
  206. this.visitId = this.$route.query.visitId + "";
  207. this.taskId = this.$route.query.taskId + "";
  208. this.storeId = this.$route.query.storeId + "";
  209. this.isMust== this.$route.query.isMust + "";
  210. this.storeGroupId = this.$route.query.storeGroupId + "";
  211. if(this.$route.query.photoType!=null){
  212. this.indexselect=0
  213. }else{
  214. this.indexselect=1
  215. }
  216. this.info()
  217. },
  218. created() {},
  219. methods: {
  220. afterRead(file) {
  221. // 此时可以自行将文件上传至服务器
  222. console.log(file);
  223. },
  224. formatter(value) {
  225. return value.replace(/[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/gi, '');
  226. },
  227. weekend(time1){
  228. var arrtime1=new Date(time1).getTime();
  229. var arrtime2=new Date().getTime();
  230. return (Math.round((arrtime2-arrtime1)/1000));
  231. },
  232. numberFn(val,index){
  233. if(!/^[+-]?\d*\.{0,1}\d{0,1}$/.test(this.collectionItemList[index].answerValue)){
  234. this.collectionItemList[index].answerValue=this.collectionItemList[index].answerValue.replace(/\.\d{2,}$/,this.collectionItemList[index].answerValue.substr(this.collectionItemList[index].answerValue.indexOf('.'),3));
  235. }},
  236. info(){
  237. // getStoreGroupTask(params).then(res=>{
  238. var collectionItemLists=[{
  239. "searchValue": null,
  240. "createBy": "admin",
  241. "createTime": "2022-03-23 14:00:37",
  242. "updateBy": "",
  243. "updateTime": null,
  244. "remark": "",
  245. "params": {},
  246. "collectionId": 213,
  247. "collectionCode": "cj100080",
  248. "collectionName": "品类",
  249. "collectionType": "xpdc",
  250. "isMust": "0",
  251. "isValid": "0",
  252. "isPicture": "1",
  253. "isMustPicture": "1",
  254. "answerType": "dx",
  255. "delFlag": "0",
  256. "useType": 1,
  257. "taskCollectionId": 379,
  258. "taskId": null,
  259. "itemList": null,
  260. "useFrequency": 3,
  261. "collectionOptionList": [{
  262. "searchValue": null,
  263. "createBy": "admin",
  264. "createTime": "2022-03-23 14:00:37",
  265. "updateBy": "",
  266. "updateTime": null,
  267. "remark": null,
  268. "params": {},
  269. "collectionOptionId": 545,
  270. "collectionId": 213,
  271. "collectionOption": "内墙乳胶漆",
  272. "delFlag": "0",
  273. "isCheck": null,
  274. "answerValue": null
  275. }, {
  276. "searchValue": null,
  277. "createBy": "admin",
  278. "createTime": "2022-03-23 14:00:37",
  279. "updateBy": "",
  280. "updateTime": null,
  281. "remark": null,
  282. "params": {},
  283. "collectionOptionId": 546,
  284. "collectionId": 213,
  285. "collectionOption": "外墙乳胶漆",
  286. "delFlag": "0",
  287. "isCheck": null,
  288. "answerValue": null
  289. }, {
  290. "searchValue": null,
  291. "createBy": "admin",
  292. "createTime": "2022-03-23 14:00:37",
  293. "updateBy": "",
  294. "updateTime": null,
  295. "remark": null,
  296. "params": {},
  297. "collectionOptionId": 547,
  298. "collectionId": 213,
  299. "collectionOption": "木器漆",
  300. "delFlag": "0",
  301. "isCheck": null,
  302. "answerValue": null
  303. }, {
  304. "searchValue": null,
  305. "createBy": "admin",
  306. "createTime": "2022-03-23 14:00:37",
  307. "updateBy": "",
  308. "updateTime": null,
  309. "remark": null,
  310. "params": {},
  311. "collectionOptionId": 548,
  312. "collectionId": 213,
  313. "collectionOption": "基材",
  314. "delFlag": "0",
  315. "isCheck": null,
  316. "answerValue": null
  317. }, {
  318. "searchValue": null,
  319. "createBy": "admin",
  320. "createTime": "2022-03-23 14:00:37",
  321. "updateBy": "",
  322. "updateTime": null,
  323. "remark": null,
  324. "params": {},
  325. "collectionOptionId": 549,
  326. "collectionId": 213,
  327. "collectionOption": "辅材",
  328. "delFlag": "0",
  329. "isCheck": null,
  330. "answerValue": null
  331. }],
  332. "fileInfoList": null
  333. }, {
  334. "searchValue": null,
  335. "createBy": "admin",
  336. "createTime": "2022-03-23 14:02:16",
  337. "updateBy": "",
  338. "updateTime": null,
  339. "remark": "",
  340. "params": {},
  341. "collectionId": 216,
  342. "collectionCode": "cj100083",
  343. "collectionName": "销售渠道",
  344. "collectionType": "xpdc",
  345. "isMust": "1",
  346. "isValid": "0",
  347. "isPicture": "1",
  348. "isMustPicture": "1",
  349. "answerType": "duox",
  350. "delFlag": "0",
  351. "useType": 1,
  352. "taskCollectionId": 382,
  353. "taskId": null,
  354. "itemList": null,
  355. "useFrequency": 3,
  356. "collectionOptionList": [{
  357. "searchValue": null,
  358. "createBy": "admin",
  359. "createTime": "2022-03-23 14:02:16",
  360. "updateBy": "",
  361. "updateTime": null,
  362. "remark": null,
  363. "params": {},
  364. "collectionOptionId": 554,
  365. "collectionId": 216,
  366. "collectionOption": "分销店",
  367. "delFlag": "0",
  368. "isCheck": null,
  369. "answerValue": null
  370. }, {
  371. "searchValue": null,
  372. "createBy": "admin",
  373. "createTime": "2022-03-23 14:02:16",
  374. "updateBy": "",
  375. "updateTime": null,
  376. "remark": null,
  377. "params": {},
  378. "collectionOptionId": 555,
  379. "collectionId": 216,
  380. "collectionOption": "金牌店",
  381. "delFlag": "0",
  382. "isCheck": null,
  383. "answerValue": null
  384. }, {
  385. "searchValue": null,
  386. "createBy": "admin",
  387. "createTime": "2022-03-23 14:02:16",
  388. "updateBy": "",
  389. "updateTime": null,
  390. "remark": null,
  391. "params": {},
  392. "collectionOptionId": 556,
  393. "collectionId": 216,
  394. "collectionOption": "专卖店",
  395. "delFlag": "0",
  396. "isCheck": null,
  397. "answerValue": null
  398. }],
  399. "fileInfoList": null
  400. }, {
  401. "searchValue": null,
  402. "createBy": "admin",
  403. "createTime": "2022-03-30 15:16:00",
  404. "updateBy": "",
  405. "updateTime": null,
  406. "remark": "",
  407. "params": {},
  408. "collectionId": 244,
  409. "collectionCode": "cj100086",
  410. "collectionName": "上传协议(必拍)",
  411. "collectionType": "xpdc",
  412. "isMust": "1",
  413. "isValid": "0",
  414. "isPicture": "0",
  415. "isMustPicture": "1",
  416. "answerType": "zp",
  417. "delFlag": "0",
  418. "useType": 1,
  419. "taskCollectionId": 383,
  420. "taskId": null,
  421. "itemList": null,
  422. "useFrequency": 3,
  423. "collectionOptionList": [],
  424. "fileInfoList": null
  425. }]
  426. for(var q=0;q<collectionItemLists.length;q++){
  427. if(collectionItemLists[q].answerType=="sz"||collectionItemLists[q].answerType=="wb"){
  428. collectionItemLists[q].answerValue=collectionItemLists[q].collectionOptionList[0].answerValue
  429. }
  430. if(collectionItemLists[q].answerType=="duox"||collectionItemLists[q].answerType=="dx"){
  431. collectionItemLists[q].answerValue=[]
  432. for(var qq=0;qq<collectionItemLists[q].collectionOptionList.length;qq++){
  433. if(collectionItemLists[q].collectionOptionList[qq].isCheck==1){
  434. collectionItemLists[q].answerValue.push(collectionItemLists[q].collectionOptionList[qq].collectionOptionId)
  435. collectionItemLists[q].collectionOptionList[qq].code=collectionItemLists[q].collectionCode
  436. collectionItemLists[q].collectionOptionList[qq].answerType=collectionItemLists[q].answerType
  437. this.collectionAnswerlisd.push(collectionItemLists[q].collectionOptionList[qq])
  438. }
  439. }
  440. collectionItemLists[q].answerValue=collectionItemLists[q].answerValue.join()
  441. }
  442. }
  443. this.collectionItemList=collectionItemLists
  444. // })
  445. },
  446. tipTitle(val){
  447. this.$toast(val);
  448. },
  449. typeshow(val){
  450. this.show=val;
  451. },
  452. onConfirm(val){
  453. this.indexselect="1"
  454. this.PhotoType=val.dictValue
  455. this.PhotoTypeText=val.text
  456. this.showPicker=false
  457. },
  458. getPhotoTypeList(){
  459. getPhotoTypeList({}).then(res=>{
  460. var PhotoTypeLists=[]
  461. for(var p=0;p<res.data.length;p++){
  462. PhotoTypeLists.push({
  463. dictValue:res.data[p].dictValue,
  464. text:res.data[p].dictLabel
  465. })
  466. }
  467. this.PhotoTypeList=PhotoTypeLists
  468. })
  469. },
  470. imgClick(val,index){
  471. this.collectionId=val.collectionId+""
  472. this.indeximg=index
  473. this.show=true
  474. },
  475. newimgarr1(val){
  476. this.show=false
  477. console.log(this.indeximg)
  478. if(this.collectionItemList[this.indeximg].fileInfoList==null||this.collectionItemList[this.indeximg].fileInfoList==undefined){
  479. this.collectionItemList[this.indeximg].fileInfoList=[]
  480. }
  481. this.collectionItemList[this.indeximg].fileInfoList.push(val)
  482. },
  483. zSelectVal(value){
  484. for(var aa=0;aa<this.collectionAnswerlisd.length;aa++){
  485. if(this.collectionAnswerlisd[aa].code==value.type){
  486. this.collectionAnswerlisd.splice(aa,1);
  487. aa--
  488. }
  489. }
  490. for(var a=0;a<value.value.length;a++){
  491. value.value[a].code=value.type
  492. value.value[a].answerType=value.answerType
  493. value.value[a].collectionType=value.collectionType
  494. this.collectionAnswerlisd.push(value.value[a])
  495. }
  496. },
  497. onSubmit() {
  498. var formData={
  499. storeId:this.storeId,
  500. storeCode:this.$route.query.storeCode,
  501. storeGroupId:this.storeGroupId,
  502. visitsId:this.visitId,
  503. taskId:this.taskId,
  504. collectionAnswers:[]
  505. }
  506. for(var b=0;b<this.collectionItemList.length;b++){
  507. if(this.collectionItemList[b].answerType=="sz"||this.collectionItemList[b].answerType=="wb"){
  508. formData.collectionAnswers.push({
  509. "collectionId":this.collectionItemList[b].collectionId,
  510. "itemName":this.collectionItemList[b].collectionName,
  511. "collectionType":this.collectionItemList[b].collectionType,
  512. "collectionOptionId":this.collectionItemList[b].collectionOptionList[0].collectionOptionId,
  513. "answerType":this.collectionItemList[b].answerType,
  514. "answerValue":this.collectionItemList[b].answerValue
  515. })
  516. }
  517. }
  518. for(var c=0;c<this.collectionAnswerlisd.length;c++){
  519. formData.collectionAnswers.push({
  520. "collectionId":this.collectionAnswerlisd[c].collectionId,
  521. "itemName":this.collectionAnswerlisd[c].collectionOption,
  522. "collectionType":this.collectionAnswerlisd[c].collectionType,
  523. "collectionOptionId":this.collectionAnswerlisd[c].collectionOptionId,
  524. "answerType":this.collectionAnswerlisd[c].answerType,
  525. "answerValue":"Y"
  526. })
  527. }
  528. if(this.flagclick) {
  529. this.flagclick = false
  530. this.timer = null;
  531. this.timer = setTimeout(() => {
  532. this.flagclick = true
  533. }, 2000)
  534. addCollectionAnswer(formData).then(res=>{
  535. if(res.code==200){
  536. this.$router.go(-1)
  537. }else{
  538. this.$toast.fail(res.msg);
  539. }
  540. })
  541. }
  542. },
  543. onClickLeft(){
  544. this.$router.go(-1)
  545. }
  546. }
  547. }
  548. </script>
  549. <style scoped>
  550. .container{background-color: white;}
  551. .van-f-red{color:red; width: 8px;display: inline-block;line-height: 26px;}
  552. .formLabel{margin: 0 16px;border-bottom:1px solid #f1f1f1}
  553. .formLabel .van-cell{padding: 10px 0}
  554. .formLabel .van-cell::after{border:0}
  555. .formLabel .van-field{border:1px solid #f1f1f1;padding: 6px;width: 100%;border-radius: 4px;overflow: hidden}
  556. .formLabel .van-field__control{padding:0 10px}
  557. .formLabel .formLabeltitle{position: absolute;
  558. top: 8px;}
  559. .lineGrey{height: 10px;width: 100%;background: #f1f1f1;}
  560. .z-checkbox .van-radio{padding: 6px 0;}
  561. .z-cell .van-cell__title{font-size: 16px;}
  562. </style>
  563. <style>
  564. .table-headermd{font-size: 12px;text-align: center;position: initial;width: 98% !important;margin: 0 auto;border-right: 0;}
  565. .table-headermd .el-table__header,
  566. .table-headermd .el-table__body {width: 100% !important;}
  567. /*.table-headermd col {width: 6.8rem;}*/
  568. .table-headermd col:nth-child(4) {width:5.6rem;}
  569. .table-headermd col:nth-child(2),
  570. .table-headermd col:nth-child(3) {width:4.6rem;}
  571. .table-headermd .van-cell{padding: 0 4px;height: 100%}
  572. .table-headermd th.el-table__cell>.cell{padding: 0 4px;text-align: center}
  573. .table-headermd th.el-table__cell:first-child>.cell{text-align: left;}
  574. .table-headermd th.el-table__cell{background-color: #1989fa;color:#fff;}
  575. .table-headermd .el-table__cell{padding: 4px 0;}
  576. .table-headermd.el-table .cell{padding: 0}
  577. .table-headermd .tipTitle{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2; }
  578. .table-headermd::before{height: 0}
  579. .xing{color:red;padding-left: 4px;}
  580. .formLabel .van-radio__label,.formLabel .van-checkbox__label{font-size: 1.4rem}
  581. .table-headermd .cell, .el-table--border .el-table__cell:first-child .cell{
  582. padding: 0 4px;
  583. }
  584. .van-dialog__confirm, .van-dialog__confirm:active{
  585. color:#1989fa;
  586. }
  587. .navBarTOP{position: fixed;width: 100%;z-index: 2;top:0; }
  588. .isTableMust{
  589. padding: 4px;
  590. color: #999;
  591. margin: 0; margin-top: -10px;
  592. }
  593. </style>