reportDetail.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833
  1. <template>
  2. <view class="content">
  3. <view class="zdyNav" v-if="info">
  4. <view class="status_bar" :style="{height: iStatusBarHeight + 'px'}"></view>
  5. <view class="nav">
  6. <view class="backBoxBox">
  7. <view class="backBox">
  8. <image src="../../static/img/icon_return_white@2x.png" mode="" class="baiheiback" @click="back"></image>
  9. <view class="shuxian"></view>
  10. <image src="../../static/img/icon_home_white@2x.png" mode="" class="homeImg" @click="goHome" ></image>
  11. </view>
  12. </view>
  13. <view >报告详情</view>
  14. <view style="width:157rpx;"></view>
  15. </view>
  16. <view class="topCont" v-if="info.state==1" >
  17. <image src="../../static/img/report_icon_daitijiao@2x.png" mode="" class="topContImg"></image>
  18. <view class="topContTxt">待提交</view>
  19. </view>
  20. <view class="topCont" v-if="info.state==2">
  21. <image src="../../static/img/report_icon_daizuoye@2x.png" mode="" class="topContImg2"></image>
  22. <view class="topContTxt">待作业</view>
  23. </view>
  24. <view class="topCont" v-if="info.state==3">
  25. <image src="../../static/img/report_icon_dianping@2x.png" mode="" class="topContImg3"></image>
  26. <view class="topContTxt">待点评</view>
  27. </view>
  28. <view class="topCont" v-if="info.state==4">
  29. <image src="../../static/img/report_icon_daihuifu@2x.png" mode="" class="topContImg4"></image>
  30. <view class="topContTxt">待回复</view>
  31. </view>
  32. <view class="topCont" v-if="info.state==5">
  33. <image src="../../static/img/report_icon_yiwancheng@2x.png" mode="" class="topContImg5"></image>
  34. <view class="topContTxt">已完成</view>
  35. </view>
  36. </view>
  37. <view class="status_bar" :style="{height: iStatusBarHeight + 'px'}"></view>
  38. <view style="height: 44px;"></view>
  39. <view class="main" v-if="info">
  40. <!-- 访问人 -->
  41. <view class="submitOpBox">
  42. <view class="submitOpBoxLeft">
  43. <view class="submitOpBoxLeftline">访问人:{{info.managerName}}</view>
  44. <view class="submitOpBoxLeftline" style="padding-top: 28rpx;">访问时间:{{info.checkTime.slice(0,info.checkTime.length-8)}}</view>
  45. </view>
  46. <view class="shopScore" v-if="info.shopScore">{{info.shopScore}}分</view>
  47. </view>
  48. <!-- 门店 -->
  49. <view class="shopBox">
  50. <view class="shopTop">
  51. <view class="shopName">{{info.shopInfo.shopName}}</view>
  52. <view class="shopTopImgBox">
  53. <image src="../../static/img/icon_daohang_def@2x.png" mode="" class="shopTopimg" @click="goaddress"></image>
  54. <image src="../../static/img/icon_phone_def@2x.png" mode="" class="shopTopimg" @click="call"></image>
  55. </view>
  56. </view>
  57. <view class="shopCont">
  58. <view class="shopLevel" v-if="info.shopInfo.shopLevel">{{info.shopInfo.shopLevel}}</view>
  59. <view class="openingTime" v-if="info.shopInfo.openingTime">·{{info.shopInfo.openingTime}}</view>
  60. <view class="openingTime">联系人:{{info.shopInfo.contactor}} {{info.shopInfo.contactorPhone}}</view>
  61. </view>
  62. <view class="address" v-if="info.shopInfo.address">
  63. <view style="padding-right: 30rpx;">{{info.shopInfo.address}}</view>
  64. <view v-if="info.shopInfo.distance">{{info.shopInfo.distance}}km</view>
  65. </view>
  66. </view>
  67. <!-- tab -->
  68. <view class="tabBox">
  69. <view class="tabLine" :class="{tabActive:tabIndex==1}" @click="tabClick(1)">检测情况</view>
  70. <view class="tabLine" :class="{tabActive:tabIndex==2}" @click="tabClick(2)">行动建议</view>
  71. <view class="tabLine" v-if="info.state==4||info.state==5" :class="{tabActive:tabIndex==3}" @click="tabClick(3)">点评</view>
  72. </view>
  73. <!-- 检测情况 -->
  74. <view class="categoryList" v-if="tabIndex==1">
  75. <view class="categoryListLine" v-for="(item,index) in info.categoryList">
  76. <view class="categoryName">{{item.categoryName}}</view>
  77. <view class="sectionList" v-for="(list,index2) in item.sectionList">
  78. <view class="checkName">{{list.checkName}}</view>
  79. <view class="itemList" v-for="(v,index3) in list.itemList">
  80. <view class="itemTOp">
  81. <view class="itemName">{{v.itemName}}</view>
  82. <view class="itemSorce" v-if="v.keyType==4">{{v.itemValue}}分</view>
  83. </view>
  84. <view class="itemdescribe" v-if="v.describe">{{v.describe}}</view>
  85. <view class="ckImemBox" v-if="v.keyType==1">
  86. <view class="ckItemLIne" v-for="(ckv,i) in v.itemValue.split(',')">
  87. {{ckv}}
  88. </view>
  89. </view>
  90. <view class="itemTxt" v-if="v.keyType==2">
  91. {{v.itemValue}}
  92. </view>
  93. <view class="itemImgBox" v-if="v.keyType==3">
  94. <view v-for="(itemiMg,i) in v.itemValue.split(',')">
  95. <image :src="itemiMg" mode="" class="itemIMg"></image>
  96. </view>
  97. </view>
  98. </view>
  99. </view>
  100. </view>
  101. </view>
  102. <!-- 行动建议 -->
  103. <view class="suggestList" v-if="tabIndex==2">
  104. <view class="suggestLine" v-for="(item,index) in info.suggestList">
  105. <view class="suggestLineTop">建议({{index+1}})</view>
  106. <view class="suggestCont">{{item.suggest}}</view>
  107. <view class="suggestLineBottom">
  108. <view class="suggestLineBottomTxt">预计完成日期:{{item.orderFinishTime.slice(0,item.orderFinishTime.length-8)}}</view>
  109. <view class="suggestLineBottomTxt">{{item.managerName}}</view>
  110. </view>
  111. <image src="../../static/img/report_weixiugai@2x.png" mode="" class="exeStateImg" v-if="item.exeState==0"></image>
  112. <image src="../../static/img/_report_yixiugai@2x.png" mode="" class="exeStateImg" v-if="item.exeState==1"></image>
  113. </view>
  114. <nodata v-if="info.suggestList.length==0"></nodata>
  115. </view>
  116. <!-- 点评 -->
  117. <view class="remarksBox" v-if="tabIndex==3">
  118. <view class="remarksLine">
  119. <view class="remarksLineTop">
  120. <view class="remarksLineTopTitle">对门店行动完成情况打分</view>
  121. <view class="remarksLineTopXxbox">
  122. <uni-rate :max="5" v-model="info.shopEvaStar" :size="16" :readonly="true"/>
  123. </view>
  124. </view>
  125. <view class="remarksLineTxt1">
  126. 补充说明
  127. </view>
  128. <view class="remarksLineTxt2" v-if="info.shopEvaContent">{{info.shopEvaContent}}</view>
  129. <view class="timeBox">
  130. <view>{{info.shopEvaTime}}</view>
  131. <view v-if="info.shopEvaOpName">{{info.shopEvaOpName}}</view>
  132. </view>
  133. <!-- 店主回复 -->
  134. <view class="shopEvaReplyBox">
  135. <view class="shopEvaReplyContent">{{info.shopEvaReplyContent}}</view>
  136. <view class="shopEvaReplyTime">{{info.shopEvaReplyTime}}</view>
  137. </view>
  138. </view>
  139. <view class="remarksLine" v-if="lookShow">
  140. <view class="remarksLineTop">
  141. <view class="remarksLineTopTitle">对运营经理的服务评价</view>
  142. <view class="remarksLineTopXxbox">
  143. <uni-rate :max="5" v-model="info.userEvaStar" :size="16" :readonly="true"/>
  144. </view>
  145. </view>
  146. <view class="remarksLineTxt1">
  147. 其他建议
  148. </view>
  149. <view class="remarksLineTxt2">{{info.userEvaContent}}</view>
  150. <view class="timeBox">
  151. <view>{{info.userEvaTime}}</view>
  152. <view>{{info.userEvaOpName}}</view>
  153. </view>
  154. </view>
  155. </view>
  156. </view>
  157. <view style="height: 150rpx;"></view>
  158. <view class="bottom" v-if="info.state==1&&loginType==1">
  159. <view class="delBtn" @click="delBg">删除</view>
  160. <view class="editBtn" @click="editBg">编辑</view>
  161. <view class="Submit" @click="submitBg">提交</view>
  162. </view>
  163. <view class="bottom" v-if="info.state==2&&loginType==1">
  164. <button open-type="share">
  165. <view class="shoreDz" @click="shareDz">发送给店长</view>
  166. </button>
  167. </view>
  168. <view class="bottom" v-if="info.state==3&&loginType==1" @click="goremarks">
  169. <view class="shoreDz">点评</view>
  170. </view>
  171. <!-- 店主-->
  172. <view class="bottom" v-if="info.state==2&&loginType==2">
  173. <view class="shoreDz" @click="editWork">修改作业</view>
  174. </view>
  175. <view class="bottom" v-if="info.state==4&&loginType==2">
  176. <view class="shoreDz" @click="goReply">回复</view>
  177. </view>
  178. <view class="bottom" v-if="info.state==3&&loginType==2" @click="goremarks2">
  179. <view class="shoreDz">点评</view>
  180. </view>
  181. </view>
  182. </template>
  183. <script>
  184. import nodata from '@/components/nodata/nodata.vue'
  185. export default {
  186. components: {
  187. nodata
  188. },
  189. data() {
  190. return {
  191. iStatusBarHeight:'',
  192. id:'',
  193. info:'',
  194. tabIndex:1,
  195. lat:'',
  196. lng:'',
  197. loginType:'',
  198. type:1,
  199. userInfoId:'',
  200. mEvaluateLook:'',
  201. lookShow:true,
  202. }
  203. },
  204. onLoad(opt) {
  205. if(uni.getStorageSync("logInData").userInfo){
  206. this.userInfoId=uni.getStorageSync("logInData").userInfo.id;
  207. this.mEvaluateLook=uni.getStorageSync("logInData").mEvaluateLook;
  208. }
  209. var that=this;
  210. this.loginType=uni.getStorageSync("logInData").type;
  211. console.log('this.loginType=='+this.loginType)
  212. this.iStatusBarHeight = uni.getSystemInfoSync().statusBarHeight;
  213. this.id=opt.id;
  214. //this.getSuperCheckSheetInfo();
  215. uni.getLocation({
  216. success(res) {
  217. that.lng = res.longitude
  218. that.lat = res.latitude
  219. that.getSuperCheckSheetInfo()
  220. },
  221. fail() {
  222. }
  223. })
  224. //#ifdef H5
  225. that.lng='117.06533'
  226. that.lat='36.68013'
  227. that.getSuperCheckSheetInfo()
  228. // #endif
  229. },
  230. onShow() {
  231. if(this.id&&this.lat){
  232. console.log(this.id)
  233. this.getSuperCheckSheetInfo()
  234. }
  235. },
  236. methods: {
  237. back(){
  238. uni.navigateBack({
  239. delta:1
  240. })
  241. },
  242. goremarks2(){
  243. uni.navigateTo({
  244. url:'../shop/shopIndex/reviewsContent?id='+this.id
  245. })
  246. },
  247. editBg(){
  248. this.info.categoryList.forEach(item=>{
  249. item.sectionList.forEach(v=>{
  250. v.check=v.isCheck;
  251. v.itemList.forEach(i=>{
  252. if(i.keyType==1){
  253. i.keyValue=i.keyValue.replace(/,/ig,',')
  254. var array= i.keyValue.split(",")
  255. var array2=i.itemValue.split(",")
  256. var arr=[];
  257. console.log(array2)
  258. array.forEach(name=>{
  259. var index = array2.indexOf(name);
  260. console.log(index)
  261. if(index!=-1){
  262. var obj={
  263. name:name,
  264. check:true
  265. }
  266. }else{
  267. var obj={
  268. name:name,
  269. check:false
  270. }
  271. }
  272. arr.push(obj)
  273. })
  274. i.array=arr
  275. }else if(i.keyType==4){
  276. var arr=[];
  277. for(var j=0;j<Number(i.keyValue) +1;j++){
  278. arr.push(j)
  279. }
  280. i.array=arr.reverse();
  281. i.storeIndex=null;
  282. }else if(i.keyType==3){
  283. i.imgArr=i.itemValue.split(",")
  284. }
  285. })
  286. })
  287. })
  288. //console.log(this.info.categoryList)
  289. this.$store.commit('mutationsCategoryList',this.info.categoryList);
  290. this.$store.commit('mutationssuggestList',this.info.suggestList)
  291. uni.navigateTo({
  292. url:'../entryReport/entered?type=3&sheetID='+this.id+'&shopId='+this.info.shopID+'&ShopName='+this.info.shopName
  293. })
  294. },
  295. goaddress(){
  296. var that=this;
  297. if(that.info.shopInfo.lat==''||that.info.shopInfo.lng==''){
  298. uni.showToast({
  299. title: '该门店未设置定位',
  300. icon:'none',
  301. duration: 2000,
  302. });
  303. return false;
  304. }
  305. uni.openLocation({
  306. latitude:Number(that.info.shopInfo.lat),
  307. longitude:Number(that.info.shopInfo.lng),
  308. name:that.info.shopInfo.shopName,
  309. address:that.info.shopInfo.address,
  310. success: function () {
  311. console.log('success');
  312. },
  313. fail(err) {
  314. console.log(err)
  315. }
  316. });
  317. },
  318. call(){
  319. var that=this;
  320. uni.makePhoneCall({
  321. phoneNumber: that.info.shopInfo.contactorPhone
  322. });
  323. },
  324. goHome(){
  325. if(this.loginType==1){
  326. uni.navigateTo({
  327. url:'../index/index'
  328. })
  329. }else{
  330. uni.navigateTo({
  331. url:'../shop/shopIndex/index'
  332. })
  333. }
  334. },
  335. tabClick(num){
  336. this.tabIndex=num
  337. },
  338. goremarks(){
  339. uni.navigateTo({
  340. url:'../entryReport/remarks?id='+this.id
  341. })
  342. },
  343. goReply(){
  344. uni.navigateTo({
  345. url:'../shop/shopIndex/reply?id='+this.id+'&shopEvaContent='+this.info.shopEvaContent+'&shopEvaOpName='+this.info.shopEvaOpName+'&shopEvaTime='+this.info.shopEvaTime+'&shopEvaStar='+this.info.shopEvaStar
  346. })
  347. },
  348. getSuperCheckSheetInfo(){
  349. uni.showLoading({
  350. title: '加载中'
  351. })
  352. let url = 'accompany/SuperCheckSheet/querySuperCheckSheetInfo',
  353. params = {
  354. sheetID: this.id,
  355. lat:this.lat,
  356. lng:this.lng
  357. }
  358. this.$http(url, params, 'GET').then(res => {
  359. for (const key in res.data.shopInfo) {
  360. res.data.shopInfo[key] = this.$praseStrEmpty(res.data.shopInfo[key])
  361. }
  362. this.info = res.data;
  363. if(this.userInfoId==res.data.managerID){
  364. if(this.mEvaluateLook==0){
  365. this.lookShow=false;
  366. }
  367. }
  368. })
  369. },
  370. editWork(){
  371. uni.navigateTo({
  372. url:'../shop/shopIndex/editWork?sheetID='+this.id
  373. })
  374. },
  375. delBg(){
  376. var that=this;
  377. uni.showModal({
  378. title: '提示',
  379. content: '您确定要删除报告吗?',
  380. success: function (res) {
  381. if (res.confirm) {
  382. uni.showLoading({ });
  383. that.$http('accompany/SuperCheckSheet/deleteSuperCheckSheet', {
  384. sheetID:that.id,
  385. }, 'POST').then(res => {
  386. uni.showToast({
  387. title: '删除成功',
  388. icon:'success',
  389. duration: 2000,
  390. });
  391. uni.navigateBack({
  392. delta:1
  393. })
  394. })
  395. } else if (res.cancel) {
  396. console.log('用户点击取消');
  397. }
  398. }
  399. });
  400. },
  401. submitBg(){
  402. if(this.info.suggestList.length==0){
  403. uni.showToast({
  404. title: '请先编辑,填写行动建议',
  405. icon:'none',
  406. duration: 3000,
  407. });
  408. return false;
  409. }
  410. uni.showLoading({ });
  411. this.$http('accompany/SuperCheckSheet/submitSuperCheckSheet', {
  412. sheetID:this.id,
  413. }, 'POST').then(res => {
  414. this.getSuperCheckSheetInfo()
  415. })
  416. },
  417. shareDz(){
  418. }
  419. },
  420. onShareAppMessage(res) {
  421. console.log(res)
  422. return {
  423. title: '报告详情',
  424. path: '/pages/reportManage/reportDetail?id='+this.id,
  425. success(res){
  426. uni.hideLoading();
  427. setTimeout(function(){
  428. uni.showToast({
  429. title: '发送成功',
  430. icon:'success',
  431. duration: 3000,
  432. });
  433. },1000)
  434. console.log("c成功")
  435. },
  436. }
  437. }
  438. }
  439. </script>
  440. <style scoped>
  441. .content{
  442. background: #F4F5F7;
  443. min-height: 100vh;
  444. }
  445. .zdyNav{
  446. background: linear-gradient(132deg, #FF8635 0%, #FF4828 100%);
  447. position: fixed;
  448. left: 0;
  449. top: 0;
  450. width: 100vw;
  451. z-index: 11;
  452. }
  453. .baiheiback{
  454. width: 18rpx;
  455. height: 34rpx;
  456. padding-top: 12rpx;
  457. padding-left: 32rpx;
  458. }
  459. .homeImg{
  460. width: 40rpx;
  461. height: 34rpx;
  462. padding-top: 12rpx;
  463. padding-right: 20rpx;
  464. }
  465. .backBox{
  466. display: flex;
  467. width: 157rpx;
  468. height: 58rpx;
  469. border-radius: 30rpx;
  470. border: 1px solid #EEEEEE;
  471. justify-content: space-between;
  472. }
  473. .shuxian{
  474. width: 2rpx;
  475. height: 32rpx;
  476. background: #E4E5E6;
  477. margin-top: 14rpx;
  478. }
  479. .nav{
  480. display: flex;
  481. justify-content: space-between;
  482. line-height: 44px;
  483. font-size: 36rpx;
  484. color: #FFFFFF;
  485. }
  486. .backBoxBox{
  487. display: flex;
  488. align-items: center;
  489. padding-left: 24rpx;
  490. }
  491. .topContImg{
  492. width: 38rpx;
  493. height: 46rpx;
  494. }
  495. .topContImg2{
  496. width: 42rpx;
  497. height: 44rpx;
  498. }
  499. .topContImg3{
  500. width: 38rpx;
  501. height: 44rpx;
  502. }
  503. .topContImg4{
  504. width: 44rpx;
  505. height: 38rpx;
  506. margin-top: 4rpx;
  507. }
  508. .topContImg5{
  509. width: 44rpx;
  510. height: 46rpx;
  511. }
  512. .topContTxt{
  513. font-size: 36rpx;
  514. font-weight: 500;
  515. color: #FFFFFF;
  516. line-height: 46rpx;
  517. margin-left: 20rpx;
  518. }
  519. .topCont{
  520. display: flex;
  521. justify-content: center;
  522. padding: 32rpx;
  523. }
  524. .main{
  525. padding-top:110rpx ;
  526. padding-left: 24rpx;
  527. padding-right: 24rpx;
  528. }
  529. .submitOpBox{
  530. background: #FFFFFF;
  531. margin-top: 20rpx;
  532. padding: 30rpx 20rpx;
  533. border-radius: 10rpx;
  534. display: flex;
  535. justify-content: space-between;
  536. }
  537. .submitOpBoxLeftline{
  538. font-size: 26rpx;
  539. color: #3C3C3C;
  540. }
  541. .shopScore{
  542. color: #FF4F00;
  543. font-size: 36rpx;
  544. padding-top: 20rpx;
  545. }
  546. .shopBox{
  547. background: #FFFFFF;
  548. margin-top: 20rpx;
  549. padding: 30rpx 20rpx;
  550. border-radius: 10rpx;
  551. }
  552. .shopTopimg{
  553. width: 48rpx;
  554. height: 48rpx;
  555. margin-left: 40rpx;
  556. }
  557. .shopTop{
  558. display: flex;justify-content: space-between;
  559. }
  560. .shopName{
  561. font-size: 30rpx;
  562. color: #3C3C3C;
  563. }
  564. .shopCont{
  565. display: flex;
  566. font-size: 26rpx;
  567. }
  568. .shopLevel{
  569. color: #B98B5D;
  570. padding-right: 15rpx;
  571. }
  572. .openingTime{
  573. padding-right: 15rpx;
  574. }
  575. .address{
  576. font-size: 26rpx;
  577. color: #999999;
  578. padding-top: 10rpx;
  579. }
  580. .tabBox{
  581. background: #FFFFFF;
  582. margin-top: 20rpx;
  583. padding: 30rpx 20rpx 0 20rpx;
  584. border-radius: 10rpx;
  585. display: flex;
  586. justify-content: space-around;
  587. }
  588. .tabLine{
  589. padding-bottom: 26rpx;
  590. }
  591. .tabActive{
  592. color: #FF4F00;
  593. border-bottom: 4rpx solid #FF4F00;
  594. }
  595. .categoryName{
  596. padding: 20rpx 0;
  597. font-size: 26rpx;
  598. color: #999999;
  599. }
  600. .sectionList{
  601. background: #FFFFFF;
  602. border-radius: 10rpx;
  603. }
  604. .checkName{
  605. padding: 30rpx 20rpx;
  606. border-bottom: 1px solid #EEEEEE;
  607. font-size: 30rpx;
  608. font-family: PingFangSC-Medium, PingFang SC;
  609. font-weight: 500;
  610. color: #3C3C3C;
  611. }
  612. .itemTOp{
  613. display: flex;
  614. justify-content: space-between;
  615. }
  616. .itemList{
  617. padding: 30rpx 20rpx;
  618. border-bottom: 1px solid #EEEEEE;
  619. }
  620. .itemName{
  621. font-size: 28rpx;
  622. color: #444444;
  623. }
  624. .itemSorce{
  625. font-size: 30rpx;
  626. color: #FF4F00;
  627. }
  628. .itemdescribe{
  629. font-size: 26rpx;
  630. color: #999999;
  631. }
  632. .bottom{
  633. width: 750rpx;
  634. height: 120rpx;
  635. background: #FFFFFF;
  636. box-shadow: 0px -4px 8px 0px rgba(153,153,153,0.08);
  637. position: fixed;
  638. left: 0;
  639. bottom: 0;
  640. display: flex;
  641. justify-content: space-around;
  642. }
  643. .delBtn{
  644. width: 220rpx;
  645. height: 74rpx;
  646. background: #F4F5F7;
  647. border-radius: 37rpx;
  648. text-align: center;
  649. line-height: 74rpx;
  650. color: #3C3C3C;
  651. font-size: 30rpx;
  652. margin-top: 24rpx;
  653. }
  654. .editBtn{
  655. width: 220rpx;
  656. height: 74rpx;
  657. background: linear-gradient(129deg, #FFDC5C 0%, #FFB62F 100%);
  658. border-radius: 37rpx;
  659. text-align: center;
  660. line-height: 74rpx;
  661. color: #FFFFFF;
  662. font-size: 30rpx;
  663. margin-top: 24rpx;
  664. }
  665. .Submit{
  666. width: 220rpx;
  667. height: 74rpx;
  668. background: linear-gradient(124deg, #FF8700 0%, #FF4F00 100%);
  669. border-radius: 37rpx;
  670. text-align: center;
  671. line-height: 74rpx;
  672. color: #FFFFFF;
  673. font-size: 30rpx;
  674. margin-top: 24rpx;
  675. }
  676. .ckItemLIne{
  677. border: 1px solid #B98B5D;
  678. border-radius: 4rpx;
  679. padding: 5rpx 10rpx;
  680. margin-left: 20rpx;
  681. }
  682. .ckImemBox{
  683. display: flex;
  684. flex-wrap: wrap;
  685. padding-top: 20rpx;
  686. font-size: 24rpx;
  687. color: #B98B5D;
  688. }
  689. .itemTxt{
  690. font-size: 26rpx;
  691. padding-top: 10rpx;
  692. color: #666666;
  693. }
  694. .itemIMg{
  695. width: 150rpx;
  696. height: 150rpx;
  697. margin-right: 20rpx;
  698. }
  699. .itemImgBox{
  700. display: flex;
  701. flex-wrap: wrap;
  702. }
  703. .suggestLine{
  704. background: #FFFFFF;
  705. border-radius: 10rpx;
  706. margin-top: 20rpx;
  707. position: relative;
  708. }
  709. .suggestLineTop{
  710. height: 76rpx;
  711. background: linear-gradient(270deg, rgba(255, 255, 255, 0.1) 0%, #FFE2D5 100%);
  712. line-height: 76rpx;
  713. color: #3C3C3C;
  714. font-size: 28rpx;
  715. padding-left: 20rpx;
  716. }
  717. .suggestCont{
  718. color: #3C3C3C;
  719. font-size: 28rpx;
  720. line-height: 40rpx;
  721. padding: 30rpx 20rpx;
  722. }
  723. .suggestLineBottom{
  724. display: flex;
  725. justify-content: space-between;
  726. color: #999999;
  727. font-size: 26rpx;
  728. padding: 0 20rpx 30rpx 20rpx;
  729. }
  730. .address{
  731. display: flex;
  732. justify-content: space-between;
  733. }
  734. .exeStateImg{
  735. width: 116rpx;
  736. height: 96rpx;
  737. position: absolute;
  738. top: 0;
  739. right: 0;
  740. z-index: 11;
  741. }
  742. .shoreDz{
  743. width: 702rpx;
  744. height: 74rpx;
  745. background: linear-gradient(124deg, #FF8700 0%, #FF4F00 100%);
  746. border-radius: 37rpx;
  747. text-align: center;
  748. line-height: 74rpx;
  749. color: #FFFFFF;
  750. font-size: 30rpx;
  751. margin-top: 24rpx;
  752. }
  753. .remarksLine{
  754. background: #FFFFFF;
  755. margin-top: 20rpx;
  756. }
  757. .remarksLineTop{
  758. display: flex;
  759. justify-content: space-between;
  760. padding: 30rpx 20rpx;
  761. font-size: 30rpx;
  762. color: #3C3C3C;
  763. border-bottom: 1px solid #EEEEEE;
  764. }
  765. .remarksLineTxt1{
  766. font-size: 28rpx;
  767. color: #444444;
  768. padding: 28rpx 20rpx;
  769. }
  770. .remarksLineTxt2{
  771. font-size: 26rpx;
  772. padding: 0rpx 20rpx 20rpx 20rpx;
  773. color: #666666;
  774. }
  775. .timeBox{
  776. display: flex;
  777. justify-content: space-between;
  778. font-size: 26rpx;
  779. padding:10rpx 20rpx;
  780. color: #999999;
  781. }
  782. .shopEvaReplyBox{
  783. background: #F4F5F7;
  784. border-radius: 10px;
  785. font-size: 26rpx;
  786. margin: 20rpx;
  787. padding: 10rpx;
  788. }
  789. .shopEvaReplyContent{
  790. color: #666666;
  791. line-height: 40rpx;
  792. }
  793. .shopEvaReplyTime{
  794. color: #999999;
  795. }
  796. </style>