ewjcj.vue 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. <template>
  2. <view>
  3. <view class="boxt" v-for="(ite,idx) in wjcjlist" :key="idx">
  4. <view class="txt">
  5. <view class="flex1 flexc">{{ite.label}}
  6. <!-- 有文件出具的权限 -->
  7. <!-- 风险报告只能有风险修改删除 -->
  8. <template v-if="checkPermi(['system:fj:add'])&&datainfo.loanApplicationType!=4&&pfrom!='vote'&&datainfo.loanApplicationType!=3">
  9. <template v-if="ite.val=='fxbg'||ite.val=='fkhgb'">
  10. <view class="editf" v-if="userId==datainfo.fUserId" @click="getfjEdit(ite.val)">
  11. <image :src="editf"></image>
  12. <view>上传</view>
  13. </view>
  14. </template>
  15. <view class="editf" v-else @click="getfjEdit(ite.val)">
  16. <image :src="editf"></image>
  17. <view>上传</view>
  18. </view>
  19. </template>
  20. </view>
  21. <!-- v-if="ite.qflag" -->
  22. <!-- <view class="edit" v-if="ite.val=='psyjqpb'||ite.val=='gdhyjy'||ite.val=='wtdbht'" @click="getQmFn">
  23. <image :src="edit"></image>
  24. <view>在线签名</view>
  25. </view> -->
  26. <!-- <view class="flex1"></view>
  27. <text class="txta" @click="getDown(ite.val)">预览</text> -->
  28. </view>
  29. <!-- <text class="txta" @click="getDown(fite.url)">预览</text> -->
  30. <view class="mt18" v-if="fileFj&&fileFj[ite.val]&&fileFj[ite.val].length">
  31. <view class="fjlists" v-for="(fite,fidx) in fileFj[ite.val]" :key='fidx'>
  32. <view class="flext flex1" @click="getDown(fite.url)">
  33. <view class="imgl"><image :src="filico" ></image></view>
  34. <view class="tit">{{fite.name}}</view>
  35. </view>
  36. <!-- ||ite.val=='wtdbht' -->
  37. <template v-if="pfrom!='vote'&&datainfo.loanApplicationType!=3&&datainfo.loanApplicationType!=4">
  38. <!-- 放款合规表 -->
  39. <template v-if="ite.val=='fxbg'||ite.val=='fkhgb'">
  40. <template v-if="userId==datainfo.fUserId">
  41. <view class="edit" v-if="(ite.val=='gdhyjy')&&checkPermi(['word:wordFilePath:wordFilePath'])" @click="getQmFn(fite.url)">
  42. <image :src="edit"></image>
  43. <view>在线签名</view>
  44. </view>
  45. <view class="delimg flex0" v-if="checkPermi(['system:fj:remove'])" @click.stop="getDelwjFj(fite.fjId)">
  46. <image :src="fdelimg"></image>
  47. </view>
  48. </template>
  49. </template>
  50. <template v-else>
  51. <view class="edit" v-if="(ite.val=='gdhyjy')&&checkPermi(['word:wordFilePath:wordFilePath'])" @click="getQmFn(fite.url)">
  52. <image :src="edit"></image>
  53. <view>在线签名</view>
  54. </view>
  55. <view class="delimg flex0" v-if="checkPermi(['system:fj:remove'])" @click.stop="getDelwjFj(fite.fjId)">
  56. <image :src="fdelimg"></image>
  57. </view>
  58. </template>
  59. </template>
  60. <text class="txta" @click="getDown(fite.url)">预览</text>
  61. </view>
  62. </view>
  63. </view>
  64. <!-- 其他附件 -->
  65. <view class="boxt" >
  66. <view class="txt">
  67. <view class="flex1 flexc">其他附件
  68. <template v-if="checkPermi(['system:fj:add'])&&datainfo.loanApplicationType!=4&&pfrom!='vote'&&datainfo.loanApplicationType!=3">
  69. <view class="editf" @click="getQtfjEdit('qtfj')">
  70. <image :src="editf"></image>
  71. <view>上传</view>
  72. </view>
  73. </template>
  74. </view>
  75. </view>
  76. <!-- <text class="txta" @click="getDown(fite.url)">预览</text> -->
  77. <!-- <view class="delimg flex0" @click.stop="getDelFj(idx)">
  78. <image :src="fdelimg"></image>
  79. </view> -->
  80. <view class="mt18" v-if="qtfileFj&&qtfileFj.qtfj&&qtfileFj.qtfj.length">
  81. <view class="fjlists" v-for="(fite,fidx) in qtfileFj.qtfj" :key='fidx'>
  82. <view class="flext flex1" @click="getDown(fite.url)">
  83. <view class="imgl"><image :src="filico" ></image></view>
  84. <view class="tit">{{fite.name}}</view>
  85. </view>
  86. <view class="delimg flex0" v-if="checkPermi(['system:fj:remove'])" @click.stop="getDelwjFj(fite.fjId)">
  87. <image :src="fdelimg"></image>
  88. </view>
  89. <text class="txta" @click="getDown(fite.url)">预览</text>
  90. </view>
  91. </view>
  92. </view>
  93. </view>
  94. </template>
  95. <script>
  96. import { checkPermi, checkRole } from "@/utils/permission"; // 权限判断函数
  97. import { selectValue } from '@/utils/common.js';
  98. import noData from "@/components/nodata/nodata.vue"
  99. export default {
  100. props:{
  101. datainfo: {
  102. type: Object,
  103. default () {
  104. return {}
  105. }
  106. },
  107. fileFj:{
  108. type: Object,
  109. default () {
  110. return {}
  111. }
  112. },
  113. qtfileFj:{
  114. type: Object,
  115. default () {
  116. return {}
  117. }
  118. },
  119. wjcjlist:{
  120. type: Array,
  121. default () {
  122. return []
  123. }
  124. },
  125. pfrom:{
  126. type: String,
  127. default () {
  128. return ''
  129. }
  130. }
  131. },
  132. components:{
  133. noData
  134. },
  135. data(){
  136. return{
  137. upimg: require('@/work/static/images/up.png'),
  138. fupimg:require('@/work/static/images/fup.png'),
  139. filico:require('@/work/static/images/filico.png'),
  140. edit:require('@/work/static/images/edit.png'),
  141. editf:require('@/work/static/images/editfile.png'),
  142. fdelimg:require('@/work/static/images/del.png'),
  143. gdfilelist:[],
  144. zheList:[],
  145. userId:this.$store.state.user.userId,
  146. fileList:[
  147. // {tit:'担保意向函',files:[{url:"",name:'安徽嘉欣医疗用品有限公司0403担保意向函.doc'}]},
  148. // {tit:'材料合规表',files:[]},
  149. // {tit:'尽职调查报告',files:[]},
  150. // {tit:'担保项目合法合规表',files:[]},
  151. // {tit:'评审意见签批表',qflag:true,files:[]},
  152. // {tit:'股东会决议',qflag:true,files:[]},
  153. // {tit:'委托保证合同',qflag:true,files:[]},
  154. // {tit:'其他附件',files:[{url:"",name:'安徽嘉欣医疗用品有限公司0403担保意向函.doc'},{url:"",name:'安徽嘉欣医疗用品有限公司0403担保意向函.doc'}]},
  155. ]
  156. }
  157. },
  158. onLoad: function() {
  159. },
  160. methods:{
  161. checkPermi, checkRole,
  162. kaType(ite){
  163. return selectValue(this.tajdlist, ite);
  164. },
  165. getZheFn(idx){
  166. this.zheList[idx].zheflag=!this.zheList[idx].zheflag
  167. },
  168. getfjEdit(val){
  169. this.$emit('getfjEdit',val)
  170. },
  171. getQtfjEdit(val){
  172. this.$emit('getQtfjEdit',val)
  173. },
  174. getDown(url){
  175. this.$emit('getDown',url)
  176. },
  177. getPreview(url){
  178. this.$emit('getPreview',url)
  179. },
  180. getDelwjFj(id){
  181. this.$emit('getDelwjFj',id)
  182. },
  183. getQmFn(url){
  184. this.$emit('getQmFn',url)
  185. },
  186. },
  187. }
  188. </script>
  189. <style lang="scss" scoped>
  190. .boxt{padding:44rpx 36rpx 40rpx;border-top: 2rpx solid #E6E6E6;}
  191. .txt{display: flex;align-items: flex-start;
  192. view{font-weight: bold;font-size: 30rpx;color: #222327;}
  193. text{color: #28C529;font-weight: 500;line-height: 40rpx;flex: 0 0 auto;margin-left: 46rpx;padding: 0 6rpx;}
  194. .upimg{width:40rpx;height: 40rpx;margin-left: 18rpx;display: flex;align-items: center;justify-content: center;
  195. image{width: 30rpx;height: 28rpx;}
  196. }
  197. }
  198. .fjlists {display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 20rpx;
  199. &:last-child{margin-bottom: 0;}
  200. .imgl{width: 40rpx;height: 40rpx;display: flex;align-items: center;flex: 0 0 auto;
  201. image{width: 26rpx;height: 24rpx;}
  202. }
  203. .tit{font-size: 26rpx;color: #222327;font-weight: 500;margin-top: 4rpx;}
  204. .delimg{width: 40rpx;height:40rpx;margin-left: 16rpx;display: flex;align-items: center;justify-content: center;flex: 0 0 auto;
  205. image{width: 24rpx;height: 24rpx;}
  206. }
  207. .txta{color: #28C529;font-weight: 500;line-height: 40rpx;flex: 0 0 auto;margin-left: 18rpx;padding: 0 6rpx;}
  208. }
  209. .upbox{display: flex;flex-direction: column;align-items: center;padding: 56rpx 0 40rpx;border-top: 2rpx solid #E6E6E6;
  210. image{width: 30rpx;height: 26rpx;margin-bottom: 18rpx;transform: rotate(180deg);}
  211. view{font-weight: 500;font-size: 26rpx;color: #666666;}
  212. }
  213. .editf{flex:0 0 auto;display: flex;align-items: center;margin-left: 24rpx;
  214. view{font-weight: 500;font-size: 26rpx;color: #00A9F0;}
  215. image{width: 22rpx;height: 24rpx;margin-right:8rpx;}
  216. }
  217. .edit{flex:0 0 auto;display: flex;align-items: center;
  218. view{font-weight: 500;font-size: 26rpx;color: #00A9F0;}
  219. image{width: 20rpx;height: 24rpx;margin-right: 2rpx;}
  220. }
  221. </style>