productImage.vue 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <template>
  2. <div>
  3. <el-button size="small" style="width:120px" type="primary" @click="queryFileLink">{{ $t('设 置') }}</el-button>
  4. <el-dialog :title="$t('设置')" append-to-body :visible.sync="dialogEditVisible">
  5. <el-row :gutter="16">
  6. <el-col :span="12">
  7. <p> {{ $t('默认图片') }}:</p>
  8. <uploadFile v-if="!image.url" style="margin-top:10px" :folderid="folderid" accept=".JPG,.PNG" btntype="image" :bindData="{ownertable:'system',ownerid:1,usetype:'defaultImage'}" @onSuccess="queryFileLink"></uploadFile>
  9. <div v-else>
  10. <!-- <img style="width:100%" :src="image.url" alt=""> -->
  11. <viewImage :image="image" :deletebtn="true" @onSuccess="queryFileLink"></viewImage>
  12. </div>
  13. <small style="display:block;margin-top:20px" class="info">{{$t('注:建议上传图片大小')}}1024x1024,{{ $t('大小不超过') }}2M,{{$t('格式为')}}JPG/PNG</small>
  14. </el-col>
  15. </el-row>
  16. <div class="dialog-footer">
  17. <el-button size="small" @click="dialogEditVisible = false" class="normal-btn-width">{{$t('取 消')}}</el-button>
  18. <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">{{$t('确 定')}}</el-button>
  19. </div>
  20. </el-dialog>
  21. </div>
  22. </template>
  23. <script>
  24. import {mapGetters} from 'vuex'
  25. import uploadFile from '../../../../components/upload/hw_obs_upload.vue'
  26. import viewImage from '../../../../components/previewImage/index.vue'
  27. export default {
  28. props:['basicInfo'],
  29. components:{
  30. uploadFile,
  31. viewImage
  32. },
  33. computed:{
  34. ...mapGetters({
  35. siteinfo:'siteinfo'
  36. })
  37. },
  38. data () {
  39. return {
  40. dialogEditVisible:false,
  41. image:{url:''},
  42. folderid:JSON.parse(sessionStorage.getItem('folderid')).appfolderid
  43. }
  44. },
  45. methods:{
  46. // 获取附件信息
  47. async queryFileLink () {
  48. this.dialogEditVisible = true
  49. const res = await this.$api.requested({
  50. "classname": "system.attachment.Attachment",
  51. "method": "queryFileLink",
  52. "content": {
  53. "ownertable": 'system',
  54. "ownerid": 1,
  55. "usetype":'defaultImage'//传空返回有所
  56. }
  57. })
  58. res.data[0]?this.image = res.data[0]:this.image = {url:''}
  59. },
  60. onSubmit(){
  61. this.dialogEditVisible = false
  62. this.$emit('setProductImage')
  63. }
  64. }
  65. }
  66. </script>
  67. <style scoped>
  68. .dialog-footer{
  69. margin-top: 50px;
  70. text-align: center;
  71. }
  72. </style>