details.vue 40 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196
  1. <template>
  2. <view class="details">
  3. <view class="zxtop">
  4. <!-- 风险部 -->
  5. <view class="failtit" v-if="datainfo.auditType==4">该业务申请未通过审核,可完善信息后进行申诉</view>
  6. <view class="detop">
  7. <!-- 归档 归档后没有业务进度-->
  8. <image :src="gdicoimg" class="gdimg" v-if="datainfo.loanApplicationType==4"></image>
  9. <block v-else>
  10. <view class="speed" v-if="checkPermi(['system:schedule:list'])" @click="getSpeedFn" :style="type=='ywjd'?'z-index: 6;':''">
  11. <image :src="speedimg"></image>
  12. <view>业务</view>
  13. <view>进度</view>
  14. </view>
  15. </block>
  16. <view class="head">
  17. <view class="top">
  18. <view class="toptit">{{datainfo.enterpriseName}}</view>
  19. <view class="statbox" v-if="datainfo.isNew=='Y'">专精特新<image :src="start"></image></view>
  20. </view>
  21. <view class="adr">贷款编号 | {{datainfo.loanApplicationNumber}}</view>
  22. <view class="adr">企业地址 | {{datainfo.enterpriseName}}</view>
  23. <view class="adr">申报时间 | {{datainfo.applicationTime}}</view>
  24. <view class="adr" v-if="datainfo.fileTime">归档时间 | {{datainfo.fileTime}}</view>
  25. </view>
  26. <view class="deta">
  27. <view class="lists">
  28. <view class="tit">申请额度</view>
  29. <view class="txt">{{datainfo.applicationAmount}}<text>/万元</text></view>
  30. </view>
  31. <view class="lists">
  32. <view class="tit">使用期限</view>
  33. <view class="txt">{{datainfo.usagePeriod}}<text>/个月</text></view>
  34. </view>
  35. <view class="lists">
  36. <view class="tit">申贷银行</view>
  37. <view class="txt">{{kaType(datainfo.applicationBank,sdyhlist)}}</view>
  38. </view>
  39. <view class="lists">
  40. <view class="tit">资金用途</view>
  41. <view class="txt">{{datainfo.purposeFunds}}</view>
  42. </view>
  43. <view class="lists">
  44. <view class="tit">还款来源</view>
  45. <view class="txt">{{datainfo.repaymentSource}}</view>
  46. </view>
  47. <view class="lists">
  48. <view class="tit">担保类型</view>
  49. <view class="txt">{{kaType(datainfo.guaranteeType,dblxlist)}}</view>
  50. </view>
  51. </view>
  52. </view>
  53. </view>
  54. <view class="main">
  55. <!-- tab -->
  56. <view class="tabs" :class="fixedflag?'tabfix':''">
  57. <view v-if='!isqiye' class="tab" :class="tabval==ite.val?'act':''" v-for="(ite,idx) in tabList" :key="idx" @click="getTab(ite.val)">{{ite.tit}}</view>
  58. <view v-if='isqiye' class="tab" :class="tabval==ite.val?'act':''" v-for="(ite,idx) in tabLists" :key="idx" @click="getTab(ite.val)">{{ite.tit}}</view>
  59. </view>
  60. <view style="height:116rpx;" v-if="fixedflag"></view>
  61. <!-- 企业信息 -->
  62. <view class="mainb" :style="'min-height: ' + minheight + 'px;'">
  63. <block v-if="tabval==0">
  64. <aqyxx @getDown="getDown" :qyinfo="qyinfo" :datainfo="datainfo" :basicFj="basicFj" ></aqyxx>
  65. </block>
  66. <block v-if="tabval==1">
  67. <bfrxx @getDown="getDown" :datainfo="datainfo" :yhlxlist="yhlxlist" :hyztlist="hyztlist" :basicFj="basicFj"></bfrxx>
  68. </block>
  69. <block v-if="tabval==2">
  70. <cfdbrxx @getDown="getDown" :datainfo="datainfo" :hyztlist="hyztlist" :basicFj="basicFj"></cfdbrxx>
  71. </block>
  72. <block v-if="tabval==3">
  73. <dfjxx @getDown="getDown" :datainfo="datainfo" :declareFj="datainfo.declareFj" :sbfjlist="sbfjlist" @getXzFn="getXzFn"></dfjxx>
  74. </block>
  75. <block v-if="tabval==4">
  76. <ewjcj @getDown="getDown" @getQmFn="getQmFn" :datainfo="datainfo" @getDelwjFj="getDelwjFj" @getfjEdit="getfjEdit" :wjcjlist="wjcjlist" :qtfileFj="datainfo.otherFj" :fileFj="datainfo.fileFj"></ewjcj>
  77. </block>
  78. <block v-if="tabval==5">
  79. <fshxx @getDown="getDown" :shjdlist="shjdlist" :datalist="shlist" ></fshxx>
  80. </block>
  81. </view>
  82. <!-- 法人信息 -->
  83. </view>
  84. <block v-if="datainfo.loanApplicationType!=4&&tabval!=5">
  85. <view class="h50"></view>
  86. <view class="footbtns">
  87. <!-- (业务进度表查询进度列表):1:申报提交 stepval 4,7,8,9,没有通过不通过
  88. 2:业务审核/分配
  89. 3:担保初审
  90. 4:尽职调查
  91. 5:初审风险合规
  92. 6:评审会
  93. 7:合同签约
  94. 8:放款合规风险审核
  95. 9:放款通知
  96. 10:归档 -->
  97. <!-- 审核进度 auditSchedule
  98. 1:业务审核/分配
  99. 2:A角色审核
  100. 3:B角色审核
  101. 4:风险审核
  102. 5:尽职调查
  103. 6:初审风险合规
  104. 7:上会评审 -->
  105. <!-- 申请审核 start-->
  106. <block v-if="datainfo.loanApplicationType!=3">
  107. <view class="fbtns bga" v-if="checkPermi(['system:application:edit'])&&stepval<2" @click="getedit">修改</view>
  108. <view class="fbtns bgc" v-if="checkPermi(['system:application:remove'])&&stepval<2" @click="getDel">删除</view>
  109. </block>
  110. <view class="fbtns bga" v-if="auditSchedule==1&&checkPermi(['system:application:sh'])" @click="getShFn('sh')">审核</view>
  111. <view class="fbtns bga" v-if="auditSchedule==4&&datainfo.auditType!=4&&checkPermi(['system:application:sh'])&&checkRole(['auditing_risk'])" @click="getShFn('fxsh')">风险审核</view>
  112. <!-- end -->
  113. <!-- a,b角按钮 start-->
  114. <view class="fbtns bgb" v-if="checkPermi(['system:application:sh'])&&userId==datainfo.aUserId&&auditSchedule==5" @click="getShFn('jztcsh')">尽职调查反馈</view>
  115. <view class="fbtns bga" v-if="checkPermi(['system:application:sh'])&&userId==datainfo.aUserId&&auditSchedule==2&&datainfo.auditType==1" @click="getShFn('ajssh')">审核</view>
  116. <view class="fbtns bga" v-if="checkPermi(['system:application:sh'])&&userId==datainfo.bUserId&&auditSchedule==3" @click="getShFn('bjssh')">审核</view>
  117. <!-- 审核后 -->
  118. <!-- <view class="fbtns bga" @click="getMoreFn('more')">更多操作</view> -->
  119. <!-- 未通过申诉 风险不通过,上会不通过-->
  120. <!-- 撤销, 业务分配,a,b角撤销 -->
  121. <view class="fbtns bga" v-if="checkPermi(['system:application:ss'])&&datainfo.auditType==4&&userId==datainfo.aUserId" @click="getSsFn">申诉</view>
  122. <!-- <block ></block> -->
  123. <!-- 申诉的时候不能撤销 -->
  124. <!-- <view class="fbtns" :class="auditSchedule==5?'bga':'bgb'" v-if="checkPermi(['system:application:cx'])&&(stepval!=1&&stepval!=10&&(datainfo.auditType!=1||auditSchedule<6&&auditSchedule>2))" @click="getCxFn">撤销</view> -->
  125. <block v-if="checkPermi(['system:application:cx'])&&stepval!=1&&stepval!=10">
  126. <view class="fbtns bga" v-if="userId==datainfo.aUserId&&auditSchedule==3" @click="getCxFn">撤销</view>
  127. <view class="fbtns bga" v-if="userId==datainfo.bUserId&&auditSchedule==4" @click="getCxFn">撤销</view>
  128. <!-- auditSchedule<7&& -->
  129. <view class="fbtns" :class="auditSchedule==5?'bga':'bgb'" v-if="(datainfo.auditType!=1||auditSchedule>4)" @click="getCxFn">撤销</view>
  130. </block>
  131. <!-- 回收站,暂存,归档不能撤 项目进度是申报提交-->
  132. <!-- 撤销,管理员在 a待审核 可以撤,
  133. a,b角是自己的时候可以撤
  134. -->
  135. <view class="fbtns bga" v-if="checkPermi(['system:application:schedule'])&&stepval<9&&stepval>6" @click="getXybFn">项目推进</view>
  136. <!-- end -->
  137. <!-- 管理员业务初审审核后出具担保意向函-->
  138. <!-- <block v-if="auditSchedule>1&&stepval<4"> -->
  139. <block v-if="checkRole(['manager'])&&auditSchedule>1&&stepval<4">
  140. <!-- <view class="fbtns bgb" @click="getfjEdit('dbyxh')">上传文件</view> -->
  141. <view class="fbtns bga" @click="getIssureFn(3,'dbyxh')">出具担保意向函</view>
  142. <view class="fbtns bgb" v-if="checkPermi(['system:application:cx'])&&auditSchedule<3&&datainfo.auditType<2" @click="getCxFn">撤销</view>
  143. </block>
  144. <!-- 风险部门 start-->
  145. <block v-if="stepval==5&&checkRole(['auditing_risk'])">
  146. <view class="fbtns bgb" v-if="checkPermi(['system:hyperlink:list'])" @click="getMoreFn('wb')">外部工具平台</view>
  147. <view class="fbtns bga" @click="getMoreFn('fxmore')">更多操作</view>
  148. </block>
  149. <!-- end -->
  150. <!-- 上会管理员 start -->
  151. <block v-if="stepval==6">
  152. <view class="fbtns bga" @click="getShFn('shsh')">审核</view>
  153. </block>
  154. <!-- 上会管理员 end -->
  155. <!-- 合同签约start -->
  156. <!-- 上传附件 是上传其他 和出具合同的附件-->
  157. <block v-if="stepval==7">
  158. <view class="fbtns bgb" @click="getMoreFn('shmore')">更多操作</view>
  159. <!-- <view class="fbtns bgb" @click="getMoreFn('htsc')">上传附件</view> -->
  160. <view class="fbtns bga" @click="getMoreFn('htqy')">出具合同</view>
  161. </block>
  162. <!-- 合同签约end -->
  163. <!-- 风险部放款 start-->
  164. <block v-if="stepval==8">
  165. <!-- <view class="fbtns bgb" @click="getfjEdit('fkhgb')">上传附件</view> -->
  166. <view class="fbtns bga" @click="getIssureFn(14,'fkhgb')">出具放款合规表</view>
  167. </block>
  168. <!-- end -->
  169. <block v-if="stepval==9">
  170. <!-- <view class="fbtns bgb" @click="getfjEdit('fktzs')">上传附件</view> -->
  171. <view class="fbtns bga" @click="getIssureFn(4,'fktzhsh')">放款通知书</view>
  172. </block>
  173. <view class="fbtns bga" v-if="stepval==9&&datainfo.loanApplicationType!=4" @click="getGdFn">一键归档</view>
  174. </view>
  175. </block>
  176. <!-- 更多操作 -->
  177. <view class="bgbox" @click="getClose" v-if="mtype"></view>
  178. <view v-if="mtype" class="morebox">
  179. <view class="molists">
  180. <!-- 审核详情后 -->
  181. <!-- <block v-if="mtype=='more'">
  182. <view class="mcoa" @click="getShFn('shhj')">上传附件</view>
  183. <view>撤回</view>
  184. </block> -->
  185. <!--风险部门 start 外部工具平台 -->
  186. <block v-if="mtype=='wb'">
  187. <view v-for="(ite,idx) in linkList" :key="idx" @click="getWebUel(ite.url)">{{ite.name}}</view>
  188. </block>
  189. <!-- 更多操作 -->
  190. <block v-if="mtype=='fxmore'">
  191. <!-- auditSchedule==6&& -->
  192. <view @click="getShFn('fxbmsh')" v-if="checkPermi(['system:application:sh'])">审核</view>
  193. <view @click="getIssureFn(13,'clhgb')">出具材料合规表</view>
  194. <!-- <view @click="getfjEdit('clhgb')">上传附件</view> -->
  195. <!-- <view @click="getfjEdit('clhgb')">上传材料合规表</view> -->
  196. <view v-if="checkPermi(['system:application:cx'])" @click="getCxFn">撤回</view>
  197. </block>
  198. <!-- 风险部门 end -->
  199. <!-- 上会管理员 start -->
  200. <block v-if="mtype=='shmore'">
  201. <view @click="getIssureFn(12,'psyjqpb')">出具评审意见签批表</view>
  202. <!-- <view @click="getIssureFn()">上会纪要</view> -->
  203. <view @click="getIssureFn(11,'gdhyjy')">出具股东会决议</view>
  204. <!-- <view @click="getfjEdit('psyjqpb')">上传评审意见签批表</view>
  205. <view @click="getfjEdit('gdhyjy')">上传上会纪要</view> -->
  206. </block>
  207. <!-- 上会管理员 end -->
  208. <!-- 合同签约 start -->
  209. <!-- 合同上传信息 -->
  210. <block v-if="mtype=='htsc'">
  211. <!-- <view @click="getfjEdit('wtdbht')">上传委托保证合同</view>
  212. <block v-if="datainfo.guaranteeType=='2'">
  213. <view @click="getfjEdit('bzfdbhtfr')">上传保证反担保合同(法人)</view>
  214. <view @click="getfjEdit('bzfdbhtzrr')">上传保证反担保合同(自然人)</view>
  215. </block>
  216. <block v-if="datainfo.guaranteeType=='1'">
  217. <view @click="getfjEdit('dyfdbhtfr')">上传抵押反担保合同(法人)</view>
  218. <view @click="getfjEdit('dyfdbhtzrr')">上传抵押反担保合同(自然人)</view>
  219. </block> -->
  220. <view @click="getQtfjEdit('qtfj')">其他附件</view>
  221. <!-- 其他附件 都给放 -->
  222. </block>
  223. <block v-if="mtype=='htqy'">
  224. <view @click="getIssureFn(2,'wtdbht')">委托保证合同</view>
  225. <block v-if="datainfo.guaranteeType=='2'">
  226. <view @click="getIssureFn(5,'bzfdbhtfr')">保证反担保合同(法人)</view>
  227. <view @click="getIssureFn(6,'bzfdbhtzrr')">保证反担保合同(自然人)</view>
  228. </block>
  229. <block v-if="datainfo.guaranteeType=='1'">
  230. <view @click="getIssureFn(7,'dyfdbhtfr')">抵押反担保合同(法人)</view>
  231. <view @click="getIssureFn(8,'dyfdbhtzrr')">抵押反担保合同(自然人)</view>
  232. <!-- <view @click="getIssureFn(9,'qlzqfdbhtfr')">权利质权反担保合同(适用于法人)</view>
  233. <view @click="getIssureFn(10,'qlzqfdbhtzrr')">权利质权反担保合同(适用于自然人)</view> -->
  234. </block>
  235. </block>
  236. <!-- 合同签约 end -->
  237. </view>
  238. <!-- <view class="surbtns" @click="getMoreSure">确认</view> -->
  239. </view>
  240. <pop-up :type="type" :shtg="shtg" :loanApplicationId="datainfo.loanApplicationId" :loanApplicationNumber="datainfo.loanApplicationNumber" :userList="userList"
  241. :stepList="stepList" :wjcjobj='wjcjobj' :qtfjobj="qtfjobj" :stepval="stepval" :fjval="fjval"
  242. @getfjAdd="getfjAdd"
  243. @getClose="getClose" @getupSubmit="getupSubmit" @getSure="getSure"></pop-up>
  244. </view>
  245. </template>
  246. <script>
  247. import config from '@/config'
  248. const baseUrl = config.baseUrl
  249. const baseName = config.baseName
  250. import self from '@/utils/location.js';
  251. import { getToken } from '@/utils/auth'
  252. import popUp from "@/work/components/popup/popup.vue"
  253. import aqyxx from "@/work/components/business/aqyxx.vue"
  254. import bfrxx from "@/work/components/business/bfrxx.vue"
  255. import cfdbrxx from "@/work/components/business/cfdbrxx.vue"
  256. import dfjxx from "@/work/components/business/dfjxx.vue"
  257. import ewjcj from "@/work/components/business/ewjcj.vue"
  258. import fshxx from "@/work/components/business/fshxx.vue"
  259. import {uploadmore,selectValue} from '@/utils/common.js'
  260. import {getInfo} from "@/api/login.js"
  261. import {getDictionaryFn} from "@/api/mine/register.js"
  262. import {getUsernoPageList,getFjAdd,getFjDel} from "@/api/common.js"
  263. import {getApplicationDet,getScheduleList,getHyperlinkList,getApplicationDel,getApplicationSh,getCommentsList,getApplicationSs,getApplicationCx,getapplicationGd,getapplicationXib,getExportMb} from "@/api/mine/work.js"
  264. import { checkPermi, checkRole } from "@/utils/permission"; // 权限判断函数
  265. export default{
  266. components:{aqyxx,bfrxx,cfdbrxx,dfjxx,ewjcj,fshxx,popUp},
  267. data(){
  268. return{
  269. start:require('@/work/static/images/start.png'),
  270. titimg:require('@/work/static/images/infotit.png'),
  271. speedimg:require('@/work/static/images/speed.png'),
  272. gdicoimg:require('@/work/static/images/gdico.png'),
  273. tabval:0,
  274. type:'',
  275. tabList:[{tit:"企业信息",val:0},{tit:"法人信息",val:1},{tit:"反担保人信息",val:2},{tit:"附件信息",val:3},{tit:"文件出具",val:4},{tit:"审核信息",val:5},],
  276. tabLists:[{tit:"企业信息",val:0},{tit:"法人信息",val:1},{tit:"反担保人信息",val:2},{tit:"附件信息",val:3}],
  277. stepList:[],
  278. stepval:0,
  279. gdflag:false,
  280. auditSchedule:'',//审核进度
  281. mtype:'',
  282. minheight:0,
  283. listTop:0,//距离顶部的距离
  284. fixedflag:false,
  285. dblxlist:[],
  286. sdyhlist:[],
  287. qyinfo:{},//企业信息
  288. datainfo:{
  289. // "createBy": "",//
  290. // "createTime": null,//
  291. // "updateBy": "",//
  292. // "updateTime": null,//
  293. // "remark": null,//
  294. "loanApplicationId": '',//贷款申请id
  295. "loanApplicationNumber": "",//贷款申请编号
  296. "applicationAmount": '',//申请额度(万元)
  297. "applicationBank": "",//申请银行
  298. "usagePeriod": "",//使用期限(月)
  299. "purposeFunds": "",//资金用途
  300. "repaymentSource": "",//还款来源
  301. "enterpriseName": "",//企业名称
  302. 'sysUserEnterprise':{},//企业对象具体字段查看营业执照
  303. "categoryType": "",//行业类型
  304. "isMake": "N",//是否是制造业
  305. "isNew": "N",//是否是精特新
  306. "isSmall": "N",//是否是小微企业
  307. "isDuty": "N",//是否是免税企业
  308. "companyIntroduction": "",//公司简介
  309. "customerType": "",//用户类型
  310. "corporationFront": "",//法人身份证正面
  311. "corporationBack": "",//法人身份证反面
  312. "corporationName": "",// 法人姓名
  313. "corporationIdCard": "",//法人身份证号
  314. "corporationPhone": "",// 法人手机号
  315. "familyPopulation": "",//家庭人口数
  316. "corporationJob": "",//法人职业
  317. "isLoan": "",//有无贷款
  318. "receivablePay": "",//应收应付款
  319. "businessSituation": "",//经营情况
  320. "businessEfficiency": "",//经营效益
  321. "corporationMaritalStatus": "",//法人婚姻状态
  322. "spouseFront": "",//配偶身份证正面
  323. "spouseBack": "",//配偶身份证反面
  324. "spouseName": "",//配偶姓名
  325. "spouseIdCard": "",//配偶身份证号
  326. "spousePhone": "",//配偶手机号
  327. "guaranteeType": "",//担保类型
  328. "guaranteeFront": "",//反担保人身份证正面
  329. "guaranteeBack": "",//反担保人身份证反面
  330. "guaranteeName": "",//反担保人姓名
  331. "guaranteeIdCard": "",//反担保人身份证号
  332. "guaranteePhone": "",//反担保人手机号
  333. // "guaranteeMaritalStatus": "",//反担保人婚姻状态
  334. // "guaranteeSpouseFront": "",//反担保人配偶身份证正面
  335. // "guaranteeSpouseBack": "",//反担保人配偶身份证反面
  336. // "guaranteeSpouseName": "",//反担保人配偶姓名
  337. // "guaranteeSpouseIdCard": "",//反担保人配偶身份证号
  338. // "guaranteeSpousePhone": "",//反担保人配偶手机号
  339. // "userId": '',//申请人用户ID
  340. // "idCard": "",//申请人身份证号码
  341. // "applicationTime": "",//申请时间
  342. "fileTime": "",//归档时间
  343. "loanSchedule": "",//贷款申请进度(业务进度表查询进度列表):1:申报提交2:业务审核/分配 3:担保初审 4:尽职调查 5:初审风险合规 6:评审会 7:合同签约 8:放款合规风险审核 9:放款通知 10:归档
  344. "loanScheduleName": '',//贷款申请进度名称(中文字)
  345. "auditSchedule": "",//审核进度1:担保初审 2:A角色审核 3:B角色审核 4:风险审核 5:尽职调查 6:上会评审
  346. "auditType": "",//审核状态 1:待审核 2:已通过 3:未通过 4:申诉
  347. "loanApplicationType": "",//贷款申请状态 1:暂存 2:正常 3:回收站 4:归档
  348. "aUserId": "",//A角色用户ID
  349. "aUserName": "",//A角色用户名称
  350. "bUserId": "",//B角色用户ID
  351. "bUserName": "",//B角色用户名称
  352. "shareholderFjList": [],//全体股东信息附件
  353. "loanApplicationFjList": [],//相关附件
  354. "basicFj": {},//基础附件
  355. "declareFj": {},//申报附件
  356. "fileFj": {},//文件出具
  357. "otherFj": {},//其他附件 key值是type类型 value值具体字段查看相关附件新增
  358. },
  359. gdlists:[],//股东信息
  360. basicFj:{},//基础附件
  361. yhlxlist:[],//用户类型
  362. hyztlist:[],//婚姻状态
  363. sbfjlist:[],//申报附件
  364. wjcjlist:[],//文件出具
  365. linkList:[],//外部链接
  366. userList:[],//用户列表
  367. shjdlist:[],//审核进度
  368. shlist:[],//审核信息
  369. shinfo:{},//审核信息
  370. wjcjobj:{},//文件出具对象
  371. qtfjobj:{'qtfj':"其他附件"},//其他附件
  372. qtfjlist:[],//其他附件
  373. fjval:'',//附件类型
  374. userId:this.$store.state.user.userId,
  375. iscjflag:false,
  376. contype:'',//二次确认弹窗
  377. mval:-1,
  378. mite:"",
  379. shtg:'',
  380. textType:[
  381. {tit:'文字',val:'w',children:['doc','docx','wps']},
  382. {tit:'表格',val:'s',children:['xls','xlsx']},
  383. {tit:'演示',val:'p',children:['ppt','pptx']},
  384. {tit:'PDF',val:'f',children:['pdf','ofd']},
  385. {tit:'智能文档',val:'o',children:['otl']},
  386. {tit:'多维表格',val:'d',children:['dbt']},
  387. ],
  388. isqiye:true
  389. }
  390. },
  391. onUnload() {
  392. uni.$off('refreshywlist')
  393. },
  394. onLoad(e) {
  395. this.id=e.id;
  396. uni.$on('refreshywlist',(e) => {
  397. this.getDetail();
  398. })
  399. this.init()
  400. this.getDetail();
  401. this.getScheduleList();
  402. if(checkPermi(['system:hyperlink:list'])){
  403. this.getHyperlinkList();//外部链接stepval==5
  404. }
  405. if(checkPermi(['system:user:noPageList'])){
  406. this.getUsernoPageList();//获取用户列表stepval==2||stepval==6
  407. }
  408. // this.getCommentsList()//审核意见
  409. this.getInfolis()
  410. },
  411. mounted() {
  412. var that=this;
  413. uni.getSystemInfo({
  414. success: (e) => {
  415. this.minheight = e.screenHeight- 50;
  416. }
  417. })
  418. setTimeout(function(){
  419. that.getHeightFn()
  420. },200)
  421. },
  422. onPageScroll(e) {
  423. var scrollTop = Number(e.scrollTop);
  424. var listTop=Number(this.listTop)
  425. if(scrollTop>listTop){
  426. this.fixedflag=true
  427. }else{
  428. this.fixedflag=false
  429. }
  430. },
  431. methods:{
  432. getInfolis() {
  433. getInfo().then(res=>{
  434. if(res.code==200){
  435. if(res.roles != null && res.roles[0] == 'qy_user'){
  436. this.isqiye = true
  437. }else{
  438. this.isqiye = false;
  439. this.getCommentsList()
  440. }
  441. }
  442. })
  443. },
  444. checkPermi, checkRole,
  445. kaType(ite,list){
  446. return selectValue(list, ite);
  447. },
  448. getedit(){
  449. var obj={
  450. type:'edit',
  451. id:this.id,
  452. val:this.tabval
  453. }
  454. this.$tab.navigateTo('/work/pages/business/add?data='+encodeURIComponent(JSON.stringify(obj)))
  455. },
  456. // 删除
  457. getDelwjFj(id){
  458. var that=this;
  459. uni.showModal({
  460. title: '确认删除',
  461. content: "是否确认删除",
  462. cancelText: '取消',
  463. confirmText: '确认',
  464. success: function(res) {
  465. if (res.confirm) {
  466. getFjDel(id).then(res=>{
  467. if(res.code==200){
  468. that.$toast("删除成功")
  469. setTimeout(function(){
  470. that.getDetail()
  471. },1200)
  472. }
  473. })
  474. } else if (res.cancel) {
  475. }
  476. }
  477. });
  478. },
  479. // 出具附件
  480. // getfjEdit(ite){
  481. // var type=0;
  482. // if(ite=='dbyxh'){
  483. // type=3
  484. // }else if(ite=='fkhgb'){
  485. // type=14
  486. // }else if(ite=='fktzs'){
  487. // type=4
  488. // }else if(ite=='clhgb'){
  489. // type=13
  490. // }else if(ite=='psyjqpb'){
  491. // type=12
  492. // }else if(ite=='gdhyjy'){
  493. // type=11
  494. // }else if(ite=='wtdbht'){
  495. // type=2
  496. // }else if(ite=='bzfdbhtfr'){
  497. // type=5
  498. // }else if(ite=='bzfdbhtzrr'){
  499. // type=6
  500. // }else if(ite=='dyfdbhtfr'){
  501. // type=7
  502. // }else if(ite=='dyfdbhtzrr'){
  503. // type=8
  504. // }else if(ite=='qlzqfdbhtfr'){
  505. // type=9
  506. // }else if(ite=='qlzqfdbhtzrr'){
  507. // type=10
  508. // }
  509. // if(type){
  510. // this.getIssureFn(type,ite)
  511. // }
  512. // },
  513. // 上传附件
  514. getfjEdit(ite){
  515. this.type='fjadd';
  516. this.mtype='';
  517. this.fjval=ite
  518. },
  519. getQtfjEdit(val){
  520. this.type='qtfjadd';
  521. this.mtype='';
  522. this.fjval=val
  523. },
  524. // 业务进度
  525. getScheduleList(){
  526. var params={
  527. loanApplicationId:this.id
  528. }
  529. getScheduleList(params).then(res=>{
  530. if(res.code==200){
  531. this.stepList=res.data
  532. }
  533. })
  534. },
  535. getWebUel(url){
  536. // this.mval=idx;
  537. // this.mite=ite
  538. this.mtype='';
  539. this.$tab.navigateTo("/pages/common/webview/index?url="+url)
  540. },
  541. getMoreSure(){
  542. var mttype=this.mtype;
  543. var mite=this.mite;
  544. if(mttype=='wb'){
  545. this.mtype='';
  546. this.$tab.navigateTo("/pages/common/webview/index?url="+mite.url)
  547. }
  548. },
  549. // 外部链接
  550. getHyperlinkList(){
  551. var params={
  552. type:1
  553. }
  554. getHyperlinkList(params).then(res=>{
  555. if(res.code==200){
  556. this.linkList=res.rows
  557. }
  558. })
  559. },
  560. // 用户-列表
  561. //用户类型(00系统用户 01注册用户 02管理用户
  562. getUsernoPageList(){
  563. var params={
  564. userType:'02'
  565. }
  566. getUsernoPageList(params).then(res=>{
  567. if(res.code==200){
  568. this.userList=res.rows
  569. }
  570. })
  571. },
  572. getCommentsList(){
  573. var params={
  574. loanApplicationId:this.id,
  575. }
  576. getCommentsList(params).then(res=>{
  577. if(res.code==200){
  578. var newArr=res.rows;
  579. newArr.forEach(ite=>{
  580. if(ite.imageUrl){
  581. ite.imageUrl=ite.imageUrl.split(',')
  582. }
  583. })
  584. this.shlist=newArr
  585. // this.shlist = res.rows.map(v => {
  586. // return {
  587. // auditType: v.auditType,
  588. // auditView: v.auditView,
  589. // fjUrl:v.fjUrl,
  590. // imageUrl:v.imageUrl.split(',')||v.imageUrl
  591. // }
  592. // })
  593. // this.shlist=res.rows
  594. }
  595. })
  596. },
  597. init(){
  598. // 用户类型
  599. getDictionaryFn('customer_type').then(res=>{
  600. if(res.code==200){
  601. this.yhlxlist = res.data.map(v => {
  602. return {
  603. label: v.dictLabel,
  604. value: v.dictValue
  605. }
  606. })
  607. }
  608. })
  609. // 婚姻状况
  610. getDictionaryFn('marital_status').then(res=>{
  611. if(res.code==200){
  612. this.hyztlist = res.data.map(v => {
  613. return {
  614. label: v.dictLabel,
  615. value: v.dictValue
  616. }
  617. })
  618. }
  619. })
  620. // 申贷银行
  621. getDictionaryFn('shendai_bank').then(res=>{
  622. if(res.code==200){
  623. this.sdyhlist = res.data.map(v => {
  624. return {
  625. label: v.dictLabel,
  626. value: v.dictValue
  627. }
  628. })
  629. }
  630. })
  631. //担保类型
  632. getDictionaryFn('guarantee_type').then(res=>{
  633. if(res.code==200){
  634. this.dblxlist = res.data.map(v => {
  635. return {
  636. label: v.dictLabel,
  637. value: v.dictValue
  638. }
  639. })
  640. }
  641. })
  642. // 附件信息
  643. getDictionaryFn('application_fj_sb').then(res=>{
  644. if(res.code==200){
  645. this.sbfjlist = res.data.map(v => {
  646. return {
  647. label: v.dictLabel,
  648. val: v.dictValue,
  649. fjlist:[]
  650. }
  651. })
  652. }
  653. })
  654. // // 文件出具
  655. getDictionaryFn('application_fj_wjcj').then(res=>{
  656. if(res.code==200){
  657. var obj={}
  658. this.wjcjlist = res.data.map(v => {
  659. // var key=v.dictValue
  660. obj[v.dictValue]=v.dictLabel
  661. return {
  662. label: v.dictLabel,
  663. val: v.dictValue,
  664. fjlist:[]
  665. }
  666. })
  667. this.wjcjobj=obj
  668. }
  669. })
  670. // 其他附件
  671. // getDictionaryFn('application_fj_other').then(res=>{
  672. // if(res.code==200){
  673. // var obj={}
  674. // this.qtfjlist = res.data.map(v => {
  675. // // var key=v.dictValue
  676. // obj[v.dictValue]=v.dictLabel
  677. // return {
  678. // label: v.dictLabel,
  679. // val: v.dictValue,
  680. // fjlist:[]
  681. // }
  682. // })
  683. // this.qtfjobj=obj
  684. // console.log(obj,1)
  685. // }
  686. // })
  687. //审核进度
  688. getDictionaryFn('audit_schedule').then(res=>{
  689. if(res.code==200){
  690. this.shjdlist = res.data.map(v => {
  691. return {
  692. label: v.dictLabel,
  693. value: v.dictValue,
  694. }
  695. })
  696. }
  697. })
  698. },
  699. getTab(val){
  700. this.tabval=val;
  701. uni.pageScrollTo({
  702. scrollTop: Number(this.listTop),
  703. duration: 0
  704. })
  705. if(val==5){
  706. this.getCommentsList()
  707. }else if(val==4&&this.iscjflag){
  708. this.iscjflag=false;
  709. this.getDetail();
  710. }
  711. },
  712. // 出具
  713. getIssureFn(type,fileType){
  714. var that=this;
  715. that.iscjflag=true;
  716. var params={
  717. type:type,
  718. loanApplicationId:this.id,
  719. fileType:fileType,
  720. bigType:'c',
  721. }
  722. getExportMb(params).then(res=>{
  723. if(res.code==200){
  724. var data=res.data;
  725. var path=data.path;
  726. var name=data.fileName;
  727. var fileName = name.replace(/.*(\/|\\)/, ""); // 获得文件名
  728. var fileSuffix = (/[.]/.exec(fileName)) ? /[^.]+$/.exec(fileName.toLowerCase()) : ''; // 获得文件后缀
  729. var texthz=fileSuffix[0];
  730. var type=''
  731. // 在线编辑
  732. // 获取后缀
  733. var textType=that.textType;
  734. Object.keys(textType).some((key) => {
  735. if (textType[key].children.indexOf(texthz)!=-1) {
  736. type=`${textType[key].val}`
  737. return true;
  738. }
  739. })
  740. data.type=type
  741. that.$tab.navigateTo('/pages/common/webview/weboffice?data='+encodeURIComponent(JSON.stringify(data)))
  742. }
  743. })
  744. },
  745. getDownloader(path,name){
  746. console.log(path,name)
  747. // #ifdef APP-PLUS
  748. self.getFilePermissions(function(res){
  749. if(res==1){
  750. uni.showLoading({
  751. title: '加载中'
  752. });
  753. var url = baseUrl + path;
  754. let dtask = plus.downloader.createDownload(url, {
  755. filename: 'file://storage/emulated/0/'+baseName+'/' + name
  756. }, (d, status) => {
  757. //d为下载的文件对象
  758. if (status == 200) {
  759. uni.hideLoading();
  760. uni.showToast({
  761. icon: 'none',
  762. mask: true,
  763. title: '已保存到文件夹:/'+baseName+'/'+ name, //保存路径
  764. duration: 3000,
  765. });
  766. //下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
  767. let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
  768. setTimeout(() => {
  769. plus.runtime.openFile(d.filename); //选择软件打开文件
  770. }, 1500)
  771. } else {
  772. //下载失败
  773. uni.hideLoading();
  774. plus.downloader.clear(); //清除下载任务
  775. uni.showToast({
  776. icon: 'none',
  777. mask: true,
  778. title: '下载失败,请稍后重试',
  779. });
  780. }
  781. })
  782. dtask.start();
  783. }else{
  784. uni.hideLoading();
  785. uni.showToast({
  786. title: '无法获取权限,文件下载将出错!',
  787. icon: 'none',
  788. })
  789. }
  790. })
  791. // #endif
  792. },
  793. getClose(){
  794. this.type='';
  795. this.mtype='';
  796. },
  797. getupSubmit(data){
  798. this.shinfo=JSON.parse(JSON.stringify(data))
  799. var type=this.type;
  800. if(type=='ajssh'||type=='bjssh'){
  801. this.contype=this.type
  802. this.type='confirm'
  803. this.shtg=data.auditType
  804. }else{
  805. this.getApplicationSh()
  806. }
  807. },
  808. getSure(){
  809. this.getApplicationSh()
  810. },
  811. getfjAdd(data){
  812. var that=this;
  813. var params=JSON.parse(JSON.stringify(data));
  814. var fjUrl=params.fjUrl
  815. // params.loanApplicationId=this.id;
  816. // params.loanApplicationNumber=this.datainfo.loanApplicationNumber;
  817. // params.auditSchedule=this.auditSchedule;
  818. getFjAdd(fjUrl).then(res=>{
  819. if(res.code==200){
  820. that.$toast('上传附件成功')
  821. setTimeout(function(){
  822. that.getDetail();
  823. uni.$emit('refreshdatalist')
  824. that.type=''
  825. },1200)
  826. }
  827. })
  828. },
  829. getApplicationSh(){
  830. var that=this;
  831. var params=this.shinfo;
  832. params.loanApplicationId=this.id;
  833. params.loanApplicationNumber=this.datainfo.loanApplicationNumber;
  834. params.auditSchedule=this.auditSchedule;
  835. getApplicationSh(params).then(res=>{
  836. if(res.code==200){
  837. that.$toast('审核成功')
  838. setTimeout(function(){
  839. that.getDetail();
  840. uni.$emit('refreshdatalist')
  841. that.type=''
  842. },1200)
  843. }
  844. })
  845. },
  846. getShFn(type){
  847. this.type=type;
  848. this.mtype='';
  849. },
  850. getSsFn(){
  851. var that=this;
  852. uni.showModal({
  853. title: '确认申诉',
  854. content: "是否确认申诉",
  855. cancelText: '取消',
  856. confirmText: '确认',
  857. success: function(res) {
  858. if (res.confirm) {
  859. var params={
  860. loanApplicationId:that.id,
  861. aUserId:that.datainfo.aUserId
  862. }
  863. getApplicationSs(params).then(res=>{
  864. if(res.code==200){
  865. that.$toast("申诉成功")
  866. setTimeout(function(){
  867. that.getDetail();
  868. uni.$emit('refreshdatalist')
  869. // uni.navigateBack({
  870. // delta:1
  871. // })
  872. },1200)
  873. }
  874. })
  875. } else if (res.cancel) {
  876. }
  877. }
  878. });
  879. },
  880. getCxFn(){
  881. var that=this;
  882. uni.showModal({
  883. title: '确认撤销',
  884. content: "是否确认撤销",
  885. cancelText: '取消',
  886. confirmText: '确认',
  887. success: function(res) {
  888. if (res.confirm) {
  889. that.mtype=''
  890. var params={
  891. loanApplicationId:that.id,
  892. auditSchedule:that.auditSchedule,
  893. loanSchedule:that.datainfo.loanSchedule,
  894. loanApplicationType:that.datainfo.loanApplicationType,
  895. auditType:that.datainfo.auditType
  896. }
  897. getApplicationCx(params).then(res=>{
  898. if(res.code==200){
  899. that.$toast("撤销成功")
  900. setTimeout(function(){
  901. uni.$emit('refreshywlist')
  902. // uni.navigateBack({
  903. // delta:1
  904. // })
  905. },1200)
  906. }
  907. })
  908. } else if (res.cancel) {
  909. }
  910. }
  911. });
  912. },
  913. getXybFn(){
  914. var that=this;
  915. uni.showModal({
  916. title: '确认推进',
  917. content: "是否确认推进",
  918. cancelText: '取消',
  919. confirmText: '确认',
  920. success: function(res) {
  921. if (res.confirm) {
  922. var params={
  923. loanApplicationId:that.id,
  924. // auditSchedule:that.auditSchedule,
  925. loanSchedule:that.datainfo.loanSchedule,
  926. // loanApplicationType:that.datainfo.loanApplicationType
  927. }
  928. getapplicationXib(params).then(res=>{
  929. if(res.code==200){
  930. that.$toast("推进成功")
  931. setTimeout(function(){
  932. uni.$emit('refreshywlist')
  933. },1200)
  934. }
  935. })
  936. } else if (res.cancel) {
  937. }
  938. }
  939. });
  940. },
  941. getGdFn(){
  942. var that=this;
  943. uni.showModal({
  944. title: '确认归档',
  945. content: "是否确认归档",
  946. cancelText: '取消',
  947. confirmText: '确认',
  948. success: function(res) {
  949. if (res.confirm) {
  950. var params={
  951. loanApplicationId:that.id,
  952. auditSchedule:that.auditSchedule,
  953. loanSchedule:that.datainfo.loanSchedule,
  954. loanApplicationType:that.datainfo.loanApplicationType,
  955. loanApplicationNumber:that.datainfo.loanApplicationNumber,
  956. auditType:that.datainfo.auditType
  957. }
  958. getapplicationGd(params).then(res=>{
  959. if(res.code==200){
  960. that.$toast("归档成功")
  961. setTimeout(function(){
  962. uni.$emit('refreshywlist')
  963. // uni.navigateBack({
  964. // delta:1
  965. // })
  966. },1200)
  967. }
  968. })
  969. } else if (res.cancel) {
  970. }
  971. }
  972. });
  973. },
  974. getMoreFn(type){
  975. this.mtype=type;
  976. this.mval=-1;
  977. this.mtit=''
  978. },
  979. getSpeedFn(){
  980. if(this.type){
  981. this.type=''
  982. }else{
  983. this.type='ywjd'
  984. }
  985. },
  986. getQmFn(url){
  987. this.$tab.navigateTo("/work/pages/business/sign?url="+encodeURIComponent(JSON.stringify(url)))
  988. },
  989. getDel(){
  990. var that=this;
  991. uni.showModal({
  992. title: '确认删除',
  993. content: "是否确认删除",
  994. cancelText: '取消',
  995. confirmText: '确认',
  996. success: function(res) {
  997. if (res.confirm) {
  998. getApplicationDel(that.id).then(res=>{
  999. if(res.code==200){
  1000. that.$toast("删除成功")
  1001. setTimeout(function(){
  1002. uni.$emit('refreshdatalist')
  1003. uni.navigateBack({
  1004. delta:1
  1005. })
  1006. },1200)
  1007. }
  1008. })
  1009. } else if (res.cancel) {
  1010. }
  1011. }
  1012. });
  1013. },
  1014. getDetail(){
  1015. getApplicationDet(this.id).then(res=>{
  1016. if(res.code==200){
  1017. this.datainfo=res.data;
  1018. this.auditSchedule=res.data.auditSchedule
  1019. if(res.data.sysUserEnterprise){
  1020. this.qyinfo=res.data.sysUserEnterprise
  1021. }
  1022. if(res.data.basicFj){
  1023. this.basicFj=res.data.basicFj;
  1024. }
  1025. this.stepval=res.data.loanSchedule||0;
  1026. // var auditSchedule=res.data.auditSchedule
  1027. // if(checkPermi(['system:hyperlink:list'])&&auditSchedule==6){
  1028. // this.getHyperlinkList();//外部链接stepval==5
  1029. // }else if(auditSchedule==1||auditSchedule==7){
  1030. // if(checkPermi(['system:user:noPageList'])){
  1031. // this.getUsernoPageList();//获取用户列表stepval==2||stepval==6
  1032. // }
  1033. // }
  1034. }
  1035. })
  1036. },
  1037. getHeightFn(){
  1038. let query = uni.createSelectorQuery().in(this);
  1039. //需要给黄色区域设置一个id标识,在这里是demo
  1040. query.select('.zxtop').boundingClientRect(data => {
  1041. this.listTop = data.height//赋值,待会要用
  1042. }).exec();
  1043. },
  1044. getPreview(url) {
  1045. var newArr=[];
  1046. newArr.push(url)
  1047. uni.previewImage({
  1048. urls: newArr,
  1049. current:0,
  1050. success: function(data) {
  1051. },
  1052. fail: function(err) {
  1053. }
  1054. });
  1055. },
  1056. onuploadEnd(item) {
  1057. var newobj={}
  1058. var responseText=JSON.parse(item.responseText)
  1059. newobj.name=responseText.originalFilename;
  1060. newobj.url=responseText.fileName;
  1061. this.filelist.push(newobj)
  1062. // this.datainfo.zsyzFjList=JSON.parse(JSON.stringify(this.filelist))
  1063. },
  1064. getXzFn(ite){
  1065. this.getDownloader(ite.url,ite.name)
  1066. },
  1067. getDown(e){
  1068. uni.showLoading({
  1069. title: '加载中'
  1070. });
  1071. var url=baseUrl+e;
  1072. let index1 = e.lastIndexOf("."); // 得到一个索引值
  1073. let index2 = e.length;
  1074. let type = e.substring(index1, index2);
  1075. if ((type.indexOf('jpg') > -1 || type.indexOf('jpeg') > -1 || type.indexOf('png') > -1)) {
  1076. uni.previewImage({
  1077. current: 0,
  1078. urls: [url],
  1079. // background: '#ffffff'
  1080. });
  1081. uni.hideLoading();
  1082. } else {
  1083. uni.downloadFile({
  1084. url: url,//文件的下载路径
  1085. success(result) {
  1086. uni.hideLoading()
  1087. var filePath = result.tempFilePath;
  1088. uni.openDocument({
  1089. filePath: filePath,
  1090. showMenu: true,
  1091. success: function (res) {
  1092. // console.log('打开文档成功');
  1093. }
  1094. });
  1095. },
  1096. fail(res) {uni.hideLoading()}
  1097. })
  1098. }
  1099. },
  1100. }
  1101. }
  1102. </script>
  1103. <style lang="scss" scoped>
  1104. .failtit{background: #FFECEC;font-weight: 500;font-size: 26rpx;color: #FF6969;text-align: center;line-height: 36rpx;padding: 22rpx;}
  1105. .zxtop{padding-bottom: 2rpx;}
  1106. .detop{background: #FFFFFF;padding:0rpx 24rpx;margin-bottom: 28rpx;flex: 0 0 auto;
  1107. position: relative;
  1108. .head{
  1109. padding: 40rpx 2rpx;border-bottom: 2rpx solid #E6E6E6;
  1110. .top{display: flex;align-items: center;overflow: hidden;
  1111. .toptit{font-weight: bold;font-size: 40rpx;color: #222327;}
  1112. .statbox{min-width: 140rpx;height: 36rpx;background-color: rgba(255,177,50,0.3);padding: 0 14rpx;box-sizing: border-box;font-weight: bold;font-size: 22rpx;color: #FF6924;display: flex;align-items: center;flex: 0 0 auto;border-radius: 10rpx;margin-left: 34rpx;
  1113. image{width: 22rpx;height: 22rpx;margin-left: 6rpx;}
  1114. }
  1115. }
  1116. .adr{font-weight: 500;font-size: 26rpx;color: #666666;margin-top: 12rpx;}
  1117. }
  1118. .deta{display: flex;flex-wrap: wrap;padding: 16rpx 0 28rpx;
  1119. .lists{padding:20rpx 0;width: 33.3%;display: flex;flex-direction: column;align-items: center;position: relative;
  1120. &::after{width: 2rpx;height: 60rpx;background: #E6E6E6;content: '';position: absolute;right: 0;top: 50%;margin-top: -30rpx;}
  1121. &:nth-of-type(3n){
  1122. &::after{display: none;}
  1123. }
  1124. .tit{font-weight: 500;font-size: 26rpx;color: #AAAAAA;margin-bottom: 38rpx;}
  1125. .txt{font-weight: bold;font-size: 30rpx;color: #222327;
  1126. text{font-size: 26rpx;color: #666666;font-weight: normal;}
  1127. }
  1128. }
  1129. }
  1130. }
  1131. .details{
  1132. // display: flex;flex-direction: column;height: 100vh;overflow: hidden;
  1133. }
  1134. .main{background-color: #FFFFFF;flex: 1;display: flex;flex-direction: column;overflow: hidden;
  1135. .tabs{padding: 0 6rpx 0 36rpx;display: flex;flex-wrap: nowrap;overflow: auto;flex: 0 0 auto;
  1136. &.tabfix{position: fixed;left: 0;right: 0;z-index: 2;top: 0;background-color: #ffffff;border-bottom: 2rpx solid #E6E6E6;}
  1137. .tab{font-weight: 500;font-size: 26rpx;color: #666666;height: 116rpx;display: flex;align-items: center;margin-right: 26rpx;flex: 0 0 auto;position: relative;
  1138. &.act{color: #00A9F0;font-weight: bold;
  1139. &::after{width: 100%;background: #00A9F0;position: absolute;left: 0;bottom: 0;
  1140. border-radius: 2rpx;height: 4rpx;content: '';}
  1141. }
  1142. }
  1143. }
  1144. .mainb{flex: 1;overflow: auto;}
  1145. }
  1146. .speed{width: 96rpx;height: 140rpx;background: #FFFFFF;box-shadow: 0px 0px 14rpx 0px rgba(184,184,184,0.76);border-radius: 20rpx;
  1147. display: flex;align-items: center;flex-direction: column;justify-content: center;
  1148. position: absolute;right: 28rpx;top: 86rpx;z-index: 2;padding: 0 6rpx;
  1149. image{width: 26rpx;height: 28rpx;margin-bottom: 8rpx;}
  1150. view{font-weight: 500;font-size: 22rpx;color: #666666;}
  1151. }
  1152. .gdimg{width: 110rpx;height: 86rpx;position: absolute;right: 40rpx;top: 130rpx;}
  1153. //
  1154. .footbtns{width: 100%;height: 100rpx;position: fixed;left: 0;right: 0;bottom: 0;display: flex;
  1155. .fbtns{flex: 1;height: 100rpx;font-weight: bold;font-size: 30rpx;display: flex;align-items: center;justify-content: center;border-top: 2rpx solid #E6E6E6;box-sizing: border-box;
  1156. &.bga{background: $com-cd3;color: #FFFFFF;}
  1157. &.bgb{background: #FFFFFF;;color: $com-cd3;}
  1158. &.bgc{background: #DF0303;;color: #FFFFFF;}
  1159. }
  1160. }
  1161. .morebox{
  1162. position: fixed;left: 0;right: 0;bottom: 0;z-index: 10;
  1163. .molists{
  1164. view{width: 100%;background: #ffffff;font-weight: 500;font-size: 30rpx;color: #222327;border-bottom: 2rpx solid #E6E6E6;min-height: 100rpx;display: flex;align-items: center;justify-content: center;padding: 10rpx;
  1165. box-sizing: border-box;
  1166. &.mcoa{color: #00A9F0;}
  1167. }
  1168. }
  1169. .surbtns{
  1170. width: 100%;height: 100rpx;background: #00A9F0;display: flex;align-items: center;justify-content: center;
  1171. font-size: 30rpx;color: #ffffff;margin-top: 24rpx;
  1172. }
  1173. }
  1174. </style>