| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <div class="app-container" id="printable-content"> |
| | | <div class="form-header mt"> |
| | | <h4 class="dt h4">家庭收支台账信息 </h4> |
| | | <el-button type="primary" class="pt" icon="el-icon-edit" @click="handleEdit()" :disabled="btn">编辑</el-button> |
| | | <h1 style="font-size:21px;padding-top:30px;display: flex;justify-content: space-between;align-items: center;" > |
| | | <span>家庭收支台账详细信息</span> |
| | | <div style="display: flex; align-items: center;"> |
| | | <el-button size="mini" type="text" v-print="'#printable-content'" v-hasPermi="['person:information:memo']"> |
| | | <div class="form" ><el-icon style="padding-right:100px;"></el-icon> |
| | | <span class="text" style="width: 69px;height: 26px;font-size: 16px; |
| | | font-family: Microsoft YaHei-Regular, Microsoft YaHei; color: #EBA4AA;">打印</span></div> |
| | | </el-button></div> |
| | | </h1> |
| | | </div> |
| | | |
| | | <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px"> |
| | | <!-- <el-form-item label="序号" prop="id"> |
| | | <el-input v-model="formData.id" placeholder="请输入id" :maxlength="11" show-word-limit :disabled="true" |
| | | clearable prefix-icon='el-icon-mobile' :style="{width: '100%'}"></el-input> |
| | | </el-form-item> --> |
| | | <el-form-item label="基金/台账" prop="type"> |
| | | <el-select v-model="formData.type" placeholder="请选择基金/台账" clearable :style="{width: '100%'}" :disabled="dsb" > |
| | | </el-select> |
| | | <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="120px"> |
| | | |
| | | <el-form-item label="台账" prop="type"> |
| | | <el-input v-model="formData.type" placeholder="请输入台账内容" clearable :style="{width: '100%'}" :disabled="dsb" > |
| | | </el-input> |
| | | <!-- |
| | | <el-select v-model="formData.type" filterable clearable placeholder="请输入台账内容" clearable :style="{width: '100%'}" :disabled="dsb" > |
| | | </el-select> --> |
| | | </el-form-item> |
| | | <el-form-item label="时间" prop="createTime"> |
| | | <el-input v-model="formData.createTime" placeholder="请选择时间" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> |
| | | <el-input v-model="formData.createTime" placeholder="请选择时间" type="date" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="收入/支出" prop="price"> |
| | | <el-input v-model="formData.price" placeholder="请输入用途" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> |
| | | <el-select :disabled="dsb" v-model="formData.price" placeholder="请选择收入/支出" clearable :style="{width: '100%'}" > |
| | | <el-option v-for="(item, index) in typeOptions2" :key="index" :label="item.label" :value="item.value" |
| | | ></el-option> |
| | | </el-select> |
| | | <!-- <el-input v-model="formData.price" placeholder="请输入选择收入/支出" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> --> |
| | | </el-form-item> |
| | | <el-form-item label="用途" prop="useFor"> |
| | | <el-input v-model="formData.useFor" placeholder="请输入使用人" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | <el-input v-model="formData.useFor" placeholder="请输入用途" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="使用人" prop="usePeople"> |
| | | <el-input v-model="formData.usePeople" placeholder="请输入持有人" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | <el-input v-model="formData.usePeople" placeholder="请输入使用人" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="现金/自动划扣" prop="kind"> |
| | | <el-input v-model="formData.kind" placeholder="请选择现金/自动划扣" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> |
| | | <el-form-item label="付款方式" prop="kind"> |
| | | <el-input v-model="formData.kind" placeholder="请输入付款方式" clearable :style="{width: '100%'}" :disabled="dsb"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="余额" prop="balance"> |
| | | <el-input v-model="formData.balance" placeholder="请输入余额" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> |
| | | <el-form-item label="金额" prop="balance"> |
| | | <el-input v-model="formData.balance" type="number" placeholder="请输入余额" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="formData.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="是否是本家庭记录" prop="ownData"> |
| | | <el-input v-model="formData.ownData === 1 ? '是':'否'" placeholder=" " clearable :style="{width: '100%'}" :disabled="true"></el-input> |
| | | </el-form-item> --> |
| | | |
| | | |
| | | <h4 class="form-header">相关图片 </h4> |
| | | <h4 class="form-header">相关图片</h4> |
| | | <el-upload |
| | | action="#" |
| | | list-type="picture-card" |
| | | multiple |
| | | :http-request="requestUpload" |
| | | :file-list="fileList" |
| | | action="#" |
| | | list-type="picture-card" |
| | | multiple |
| | | :http-request="requestUpload" |
| | | :file-list="fileList" |
| | | :on-change="handleChange" |
| | | :auto-upload="false" |
| | | :disabled="!btn" |
| | | :class="{ hide: !btn }" |
| | | > |
| | | <i slot="default" class="el-icon-plus"></i> |
| | | <div slot="file" slot-scope="{file}"> |
| | | <img |
| | | class="el-upload-list__item-thumbnail" |
| | | :src="file.url" |
| | | alt="" |
| | | style="width: 147px; height: 147px" |
| | | fit="cover" |
| | | :preview-src-list="[file.url]" |
| | | > |
| | | <span class="el-upload-list__item-actions"> |
| | | |
| | | <i v-if="!uploading" slot="default" class="el-icon-plus"></i> |
| | | <div slot="file" slot-scope="{file}"> |
| | | <img |
| | | class="el-upload-list__item-thumbnail" |
| | | :src="file.url" |
| | | alt="" |
| | | style="width: 100%; height: 100%" |
| | | fit="cover" |
| | | :preview-src-list="[file.url]" |
| | | > |
| | | <span class="el-upload-list__item-actions"> |
| | | <span |
| | | |
| | | class="el-upload-list__item-preview" |
| | | @click="handlePictureCardPreview(file)" |
| | | > |
| | | <i class="el-icon-zoom-in"></i> |
| | | </span> |
| | | <span |
| | | v-if="!disabled" |
| | | |
| | | class="el-upload-list__item-delete" |
| | | @click="handleDownload(file.url)" |
| | | > |
| | | <i class="el-icon-download"></i> |
| | | </span> |
| | | <span |
| | | v-if="!disabled" |
| | | v-if="isShow" |
| | | class="el-upload-list__item-delete" |
| | | @click="handleRemove(file)" |
| | | > |
| | |
| | | </span> |
| | | |
| | | |
| | | </div> |
| | | </el-upload> |
| | | |
| | | </div> |
| | | </el-upload> |
| | | <el-button |
| | | style="margin-left: 10px" |
| | | size="small" |
| | | type="success" |
| | | v-if="btn" |
| | | @click="picUpload" |
| | | >上传到服务器</el-button> |
| | | <h4 class="form-header">其他附件 </h4> |
| | | <el-upload |
| | | action="" |
| | | :file-list="fileListOther" |
| | | class="upload-demo" |
| | | multiple |
| | | :on-preview="handlePreview" |
| | | |
| | | :on-remove="handleRemove" |
| | | :http-request="requestUpload" |
| | | list-type="picture-card" |
| | | :on-preview="handleFileCardPreview" |
| | | :on-remove="handleRemoveFile" |
| | | :http-request="requestUpload1" |
| | | ref="upload1" |
| | | :show-file-list="true" |
| | | :on-change="handleChange1" |
| | | :auto-upload="false" |
| | | :disabled="!btn" |
| | | :class="{ hide: !btn }" |
| | | > |
| | | <el-button type="primary">Click to upload</el-button> |
| | | <template #tip> |
| | | <div class="el-upload__tip"> |
| | | </div> |
| | | </template> |
| | | |
| | | <i v-if="!uploading" slot="default" class="el-icon-plus"></i> |
| | | <div slot="file" slot-scope="{file}"> |
| | | <!-- 添加video元素用于显示视频 --> |
| | | <video |
| | | v-if="file.url.includes('.mp4')" |
| | | class="el-upload-list__item-thumbnail" |
| | | :src="file.url" |
| | | style="width: 147px; height: 147px" |
| | | fit="cover" |
| | | ></video> |
| | | <img v-else |
| | | class="el-upload-list__item-thumbnail" |
| | | src="../../assets/images/deviceLis.png" |
| | | alt="" |
| | | style="width: 147px; height: 147px" |
| | | fit="cover"> |
| | | |
| | | <span class="el-upload-list__item-actions"> |
| | | <span class="el-upload-list__item-name">{{ file.name }}</span> |
| | | <span |
| | | class="el-upload-list__item-preview" |
| | | @click="handleFileCardPreview(file)" |
| | | > |
| | | <i class="el-icon-zoom-in"></i> |
| | | </span> |
| | | <span |
| | | |
| | | class="el-upload-list__item-delete" |
| | | @click="handleDownload(file.url)" |
| | | > |
| | | <i class="el-icon-download"></i> |
| | | </span> |
| | | <span |
| | | v-if="isShow" |
| | | class="el-upload-list__item-delete" |
| | | @click="handleRemoveFile(file)" |
| | | > |
| | | <i class="el-icon-delete"></i> |
| | | </span> |
| | | </span> |
| | | |
| | | </div> |
| | | |
| | | |
| | | </el-upload> |
| | | |
| | | <el-button |
| | | style="margin-left: 10px" |
| | | size="small" |
| | | type="success" |
| | | v-if="btn" |
| | | @click="fileUpload" |
| | | >上传到服务器</el-button> |
| | | <h4 class="form-header"> </h4> |
| | | <el-form-item size="large"> |
| | | <el-button type="primary" @click="submitForm" :disabled="dsb">修改</el-button> |
| | | <el-button v-if="isShow" type="primary" @click="submitForm" :disabled="dsb">修改</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | |
| | | <el-dialog :visible.sync="dialogVisible"> |
| | | <img w-full :src="dialogImageUrl" alt="Preview Image" /> |
| | | <img w-full :src="dialogImageUrl" style="width: 100%; height: 100%" alt="Preview Image" /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import {getEconomyInfo, uploadPic, download, getCategory} from "@/api/economy/index"; |
| | | import {getEconomyInfo, uploadPic, download, updateEconomy} from "@/api/economy/index"; |
| | | import {addRole, updateRole} from "@/api/system/role"; |
| | | import {blobValidate} from "@/utils/ruoyi"; |
| | | import errorCode from "@/utils/errorCode"; |
| | |
| | | return { |
| | | cdi:"资产详细信息", |
| | | udi:"资产信息修改", |
| | | fot:[".jpg",".jif"], |
| | | // 数据范围选项 |
| | | fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx', |
| | | '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng'], |
| | | |
| | | fileList:[ |
| | | ], |
| | | fileList1:[], |
| | | uploadFileList:[], |
| | | uploadFileList1:[], |
| | | fileListOther:[ |
| | | |
| | | ], |
| | | fileListOther1:[], |
| | | dsb:true, |
| | | btn:false, |
| | | isShow:true, |
| | | uploading: false, |
| | | formData: { |
| | | type: undefined, |
| | | createTime: undefined, |
| | |
| | | usePeople: undefined, |
| | | kind:undefined, |
| | | remark: undefined, |
| | | url: undefined, |
| | | url: "", |
| | | }, |
| | | dialogImageUrl: '', |
| | | dialogVisible: false, |
| | | disabled: false, |
| | | dialogImageUrl: '', |
| | | dialogVisible: false, |
| | | disabled: false, |
| | | rules: { |
| | | // id: [{ |
| | | // required: true, |
| | | // message: '请输入id', |
| | | // trigger: 'blur' |
| | | // }], |
| | | type: [{ |
| | | required: true, |
| | | message: '请选择基金/台账', |
| | | trigger: 'change' |
| | | }], |
| | | title: [{ |
| | | required: true, |
| | | message: '请输入标题', |
| | | trigger: 'blur' |
| | | }], |
| | | usePeople: [{ |
| | | required: true, |
| | | message: '请输入使用人', |
| | | trigger: 'blur' |
| | | }], |
| | | |
| | | useFor: [{ |
| | | required: true, |
| | | message: '请输入用途', |
| | | trigger: 'blur' |
| | | }], |
| | | price: [{ |
| | | type: [{ |
| | | required: true, |
| | | message: '请输入收入/支出', |
| | | message: '请输入台账内容', |
| | | trigger: 'blur' |
| | | }], |
| | | balance: [{ |
| | | required: true, |
| | | message: '请输入金额', |
| | | trigger: 'blur' |
| | | }], |
| | | kind: [{ |
| | | required: true, |
| | | message: '请选择现金/划扣', |
| | | // required: true, |
| | | message: '请输入支付方式', |
| | | trigger: 'blur' |
| | | }], |
| | | createTime: [{ |
| | | required: true, |
| | | message: '请输入备注', |
| | | trigger: 'blur' |
| | | message: '请选择日期选择', |
| | | trigger: 'change' |
| | | }], |
| | | |
| | | price: [{ |
| | | required: true, |
| | | message: '请选择收入/支出', |
| | | trigger: 'change' |
| | | }], |
| | | }, |
| | | typeOptions2: [ |
| | | { |
| | | value: '收入', |
| | | label: '收入', |
| | | }, |
| | | { |
| | | value: '支出', |
| | | label: '支出', |
| | | } |
| | | ], |
| | | typeOptions: [{ |
| | | value: '0', |
| | | label: '基金', |
| | | }, |
| | | { |
| | | value: '1', |
| | | label: '台账', |
| | | }], |
| | | value: '0', |
| | | label: '基金', |
| | | }, |
| | | { |
| | | value: '1', |
| | | label: '台账', |
| | | }], |
| | | } |
| | | }, |
| | | computed: {}, |
| | |
| | | let jd; |
| | | if(this.$route.query.detail!=undefined) |
| | | { |
| | | jd = this.$route.query.detail |
| | | this.btn= jd |
| | | this.dsb = !jd |
| | | document.title = "修改资产详细信息"; |
| | | this.$route.meta.title = "修改资产详细信息";//列表的名称 |
| | | jd = this.$route.query.detail; |
| | | this.btn= jd; |
| | | this.dsb = !jd; |
| | | this.isShow=true; |
| | | this.$route.meta.title = "修改家庭收支台账信息";//列表的名称 |
| | | } |
| | | else{ |
| | | document.title = "查看资产详细信息"; |
| | | this.$route.meta.title = "查看资产详细信息";//列表的名称 |
| | | this.$route.meta.title = "家庭收支台账详细信息";//列表的名称 |
| | | this.isShow=false; |
| | | this.btn = false; |
| | | } |
| | | |
| | | let _this = this |
| | |
| | | this.loading = true; |
| | | getEconomyInfo(id).then((response) => { |
| | | this.formData = response.data; |
| | | // console.log(this.formData) |
| | | //alert(this.formData.ownData) |
| | | let paths = response.data.url.split(","); |
| | | for(let i = 0; i < paths.length; i++) |
| | | { |
| | | if(paths[i]!="") { |
| | | |
| | | let pth = paths[i].substr(paths[i].length - 4, paths[i].length) |
| | | let pth = paths[i].substr(paths[i].length - 4, paths[i].length) |
| | | // alert(pth) |
| | | if (_this.fot.includes(pth) === true) |
| | | // { |
| | | // if(paths[i][0]=="/") |
| | | // _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false}) |
| | | // else |
| | | // _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false}) |
| | | // } |
| | | { |
| | | if(paths[i].includes(process.env.VUE_APP_BASE_TRUE_API)){ |
| | | if(paths[i][0]=="/") |
| | | _this.fileList.push({name:paths[i],url: paths[i].substr(1),res:false}) |
| | | else |
| | | _this.fileList.push({name:paths[i],url: paths[i],res:false}) |
| | | }else{ |
| | | if(paths[i][0]=="/") |
| | | _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false}) |
| | | else |
| | | _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false}) |
| | | } |
| | | |
| | | if (_this.fot.includes(pth) === true) |
| | | _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i]}) |
| | | else { |
| | | // alert(paths[i]) |
| | | let nms = paths[i].split("\/") |
| | | let nm = nms[nms.length - 1] |
| | | _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i]}) |
| | | } |
| | | else { |
| | | // alert(paths[i]) |
| | | // alert() |
| | | let nms = paths[i].split("\/") |
| | | let nm = nms[nms.length - 1] |
| | | if(paths[i][0]=="/") |
| | | _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false}) |
| | | else |
| | | _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false}) |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | this.loading = false; |
| | | }); |
| | | this.getCateInfor() |
| | | // this.getCateInfor() |
| | | |
| | | } |
| | | }, |
| | | mounted() {}, |
| | | methods: { |
| | | getSrc1(type) { |
| | | if (type === 0) { |
| | | return '基金' |
| | | }else { |
| | | return '台账' |
| | | } |
| | | }, |
| | | |
| | | getSrc2(kind) { |
| | | if (kind == 0) { |
| | | return '现金' |
| | | }else { |
| | | return '自动扣划' |
| | | } |
| | | }, |
| | | /** 查询类别信息 */ |
| | | getCateInfor() |
| | | { |
| | | getData(){ |
| | | const id = this.$route.params && this.$route.params.id; |
| | | let _this = this |
| | | getCategory().then(response=>{ |
| | | if (id) { |
| | | this.loading = true; |
| | | getEconomyInfo(id).then((response) => { |
| | | this.formData = response.data; |
| | | // console.log(this.formData) |
| | | //alert(this.formData.ownData) |
| | | let paths = response.data.url.split(","); |
| | | for(let i = 0; i < paths.length; i++) |
| | | { |
| | | if(paths[i]!="") { |
| | | |
| | | response.data.itemValues.replace("{","").replace("}","").split(",").map(elem=>{ |
| | | _this.typeOptions.push({"label":elem.split(":")[0], "value":elem.split(":")[0]}) |
| | | }) |
| | | }) |
| | | let pth = paths[i].substr(paths[i].length - 4, paths[i].length) |
| | | // alert(pth) |
| | | if (_this.fot.includes(pth) === true) |
| | | { |
| | | console.log() |
| | | } |
| | | else { |
| | | let nms = paths[i].split("\/") |
| | | let nm = nms[nms.length - 1] |
| | | if(paths[i][0]=="/") |
| | | _this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false}) |
| | | else |
| | | _this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false}) |
| | | |
| | | } |
| | | } |
| | | } |
| | | _this.fileListOther = _this.fileListOther1 |
| | | this.loading = false; |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | getSrc1(price) { |
| | | if (price === 收入) { |
| | | return '收入' |
| | | }else { |
| | | return '支出' |
| | | } |
| | | }, |
| | | |
| | | submitForm() { |
| | | let ul = this.fileList.map(function (elem){ |
| | | return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }).join(",") |
| | | let uls = this.fileListOther.map(function (elem){ |
| | | return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }).join(",") |
| | | this.formData.url = ul+","+uls |
| | | |
| | | |
| | | this.$refs['elForm'].validate(valid => { |
| | | |
| | |
| | | download(formData).then(async (response) => { |
| | | const isLogin = await blobValidate(response); |
| | | let nt = new Date().getTime() |
| | | let filename = 'economy_'+nt+'.'+suffix |
| | | let filename = 'familyevent_'+nt+'.'+suffix |
| | | const blob = new Blob([response]) |
| | | saveAs(blob, filename) |
| | | }) |
| | | }, |
| | | |
| | | handleRemoveFile(file) { |
| | | //判读是否是之前的图片 |
| | | let res = false |
| | | for(let i = 0; i < this.fileListOther.length; i++) |
| | | { |
| | | if(this.fileListOther[i].url==file.url) |
| | | { |
| | | if(this.fileListOther[i].res==false) |
| | | res = true |
| | | else |
| | | { |
| | | this.$delete(this.uploadFileList1, Math.abs(i - this.uploadFileList1.length-1)) |
| | | } |
| | | this.$delete(this.fileListOther,i); |
| | | |
| | | |
| | | handlePictureCardPreview(file) { |
| | | this.dialogFileUrl = file.url; |
| | | const Base64 = require('js-base64').Base64 |
| | | this.desurl = process.env.VUE_APP_BASE_OTHER_API+'onlinePreview?url='+encodeURIComponent(Base64.encode(this.dialogFileUrl)); |
| | | myWindow=window.open(this.desurl,'','width=1200,height=800,top=150,left=300'); |
| | | |
| | | }, |
| | | //删除图片 |
| | | handleRemoveFile(file,) { |
| | | |
| | | for(let i = 0; i < this.fileListOther.length; i++) |
| | | { |
| | | if(this.fileListOther[i].url==file.url) |
| | | this.$delete(this.fileListOther,i); |
| | | } |
| | | }, |
| | | handleDownload(url) { |
| | | var formData = {'path':"/"+url.replace(process.env.VUE_APP_BASE_TRUE_API,"")}; |
| | | } |
| | | } |
| | | |
| | | let lens = formData.path.split(".") |
| | | let suffix = lens[lens.length-1] |
| | | download(formData).then(async (response) => { |
| | | const isLogin = await blobValidate(response); |
| | | let nt = new Date().getTime() |
| | | let filename = 'property_'+nt+'.'+suffix |
| | | const blob = new Blob([response]) |
| | | saveAs(blob, filename) |
| | | let ul = "" |
| | | this.fileList.map(function (elem){ |
| | | if(elem.res==false) |
| | | ul = ul + ","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }) |
| | | }, |
| | | let uls = "" |
| | | this.fileListOther.map(function (elem){ |
| | | if(elem.res==false) |
| | | uls = uls +","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }) |
| | | this.formData.url = ul+","+uls; |
| | | // alert(this.formData.url) |
| | | if(res==true){ |
| | | updateEconomy(this.formData).then(response => { |
| | | this.$modal.msgSuccess("删除成功"); |
| | | // this.open = false; |
| | | |
| | | }); |
| | | } |
| | | }, |
| | | handleRemove(file) { |
| | | //判断是否是之前的图片 |
| | | let res = false |
| | | // alert(this.fileList.length) |
| | | for(let i = 0; i < this.fileList.length; i++) |
| | | { |
| | | if(this.fileList[i].url==file.url) |
| | | { |
| | | //原来图像标记为false |
| | | //alert(this.fileList[i].res) |
| | | if(this.fileList[i].res==false) |
| | | res = true |
| | | else |
| | | { |
| | | // alert(this.uploadFileList.length) |
| | | // alert(87) |
| | | this.$delete(this.uploadFileList, Math.abs(i - this.uploadFileList.length-1)) |
| | | // alert(this.uploadFileList.length) |
| | | } |
| | | this.$delete(this.fileList,i); |
| | | |
| | | } |
| | | } |
| | | let ul = "" |
| | | this.fileList.map(function (elem){ |
| | | if(elem.res==false) |
| | | ul = ul + ","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }) |
| | | let uls = "" |
| | | this.fileListOther.map(function (elem){ |
| | | if(elem.res==false) |
| | | uls = uls +","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | }) |
| | | this.formData.url = ul+","+uls; |
| | | if(res==true){ |
| | | updateEconomy(this.formData).then(response => { |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }); |
| | | } |
| | | |
| | | }, |
| | | handleFileCardPreview(file){ |
| | | this.dialogFileUrl = file.url; |
| | | // alert(file.url) |
| | | // this.dialogFileUrl = 'https://www.bendudu.com:8080/profile/upload/2023/10/18/20231018214647A011.doc' |
| | | // this.dialogFileUrl = 'https://47.93.189.255:8080/profile/upload/2023/03/19/test7_20230319222030A007.jpg' |
| | | if(this.dialogFileUrl.includes("47.93.189.255")==true) |
| | | this.dialogFileUrl = this.dialogFileUrl.replace("47.93.189.255","www.bendudu.com") |
| | | //alert(this.dialogFileUrl) |
| | | const Base64 = require('js-base64').Base64 |
| | | |
| | | this.desurl = process.env.VUE_APP_BASE_OTHER_API+"preview/"+'onlinePreview?url='+encodeURIComponent(Base64.encode(this.dialogFileUrl)); |
| | | let myWindow=window.open(this.desurl,'','width=1200,height=800,top=150,left=300'); |
| | | }, |
| | | handlePictureCardPreview(file) { |
| | | this.dialogImageUrl = file.url; |
| | | this.dialogVisible = true; |
| | | }, |
| | | handleDownload(url) { |
| | | var formData = {'path':"/"+url.replace(process.env.VUE_APP_BASE_TRUE_API,"")}; |
| | | |
| | | let lens = formData.path.split(".") |
| | | let suffix = lens[lens.length-1] |
| | | download(formData).then(async (response) => { |
| | | const isLogin = await blobValidate(response); |
| | | let nt = new Date().getTime() |
| | | let filename = 'familyevent_'+nt+'.'+suffix |
| | | const blob = new Blob([response]) |
| | | saveAs(blob, filename) |
| | | }) |
| | | }, |
| | | handleEdit() |
| | | { |
| | | this.dsb = false |
| | | this.btn = true |
| | | this.isShow=false |
| | | }, |
| | | requestUpload(params) |
| | | { |
| | | var file = params.file; |
| | | var formData = new FormData(); |
| | | formData.append('uploadFile', file); |
| | | let _this = this |
| | | |
| | | uploadPic(formData).then(response => { |
| | | let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length) |
| | | //自定义上传方法 |
| | | handleChange(file, fileList1) { |
| | | //定义一个全局数组uploadFileList来做存储 |
| | | |
| | | if(_this.fot.includes(pth) === true) |
| | | { |
| | | _this.fileList.push({name:response.data.fileName, "url":response.data.url}) |
| | | // this.uploadFileList.push(file.raw); |
| | | console.log("=========5555=========") |
| | | this.uploadFileList.push(file.raw); |
| | | this.fileList.push({name:file.name,url:file.url,res:true}) |
| | | }, |
| | | //自定义上传方法 |
| | | handleChange1(file, fileListOther12) { |
| | | //定义一个全局数组uploadFileList来做存储 |
| | | |
| | | } |
| | | // this.uploadFileList.push(file.raw); |
| | | this.uploadFileList1.push(file.raw); |
| | | this.fileListOther.push({name:file.name,url:file.url,res:true}) |
| | | console.log("=========5555=========") |
| | | //console.log(file) |
| | | // console.log(this.uploadFileList) |
| | | // this.fileList = fileList |
| | | }, |
| | | fileUpload(){ |
| | | // var file = params.file; |
| | | |
| | | else{ |
| | | _this.fileListOther.push({name:response.data.fileName, url:response.data.url}) |
| | | var formData = new FormData(); |
| | | //this.$refs.upload1.submit(); |
| | | // alert(this.uploadFileList1.length) |
| | | // formData.append('uploadFile', file); |
| | | if(this.uploadFileList1.length==0){ |
| | | this.$modal.msgSuccess("文档上传列表不能为空!"); |
| | | return} |
| | | |
| | | } |
| | | }) |
| | | this.uploadFileList1.forEach((elem)=>{ |
| | | formData.append("files", elem) |
| | | |
| | | }) |
| | | console.log(this.uploadFileList1) |
| | | let _this = this |
| | | |
| | | this.uploading = true; |
| | | uploadPic(formData).then(response => { |
| | | _this.uploadFileList1 = [] |
| | | _this.formData.url = _this.formData.url+","+response.fileNames |
| | | updateEconomy(_this.formData).then(response => { |
| | | this.$modal.msgSuccess("文档上传成功"); |
| | | // this.open = false; |
| | | this.getData() |
| | | this.fileListOther1=[] |
| | | }); |
| | | }) |
| | | |
| | | }, |
| | | picUpload() |
| | | { |
| | | |
| | | var formData = new FormData(); |
| | | //this.$refs.upload.submit(); |
| | | //alert(this.uploadFileList.length) |
| | | if(this.uploadFileList.length==0){ |
| | | this.$modal.msgSuccess("图像上传列表不能为空!"); |
| | | return} |
| | | |
| | | this.uploadFileList.forEach((elem)=>{ |
| | | formData.append("files", elem) |
| | | |
| | | }) |
| | | let _this = this |
| | | |
| | | |
| | | uploadPic(formData).then(response => { |
| | | // console.log(response.originalFilenames) |
| | | // console.log(response.urls) |
| | | // console.log(response.fileNames) |
| | | // console.log(response.newFileNames) |
| | | // let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length) |
| | | // _this.uploading1= false; |
| | | // console.log(_this.fot.includes(pth)) |
| | | // // debugger |
| | | // if(_this.fot.includes(pth) === true) |
| | | // { |
| | | // _this.fileList.push({name:response.data.fileName, "url":response.data.url}) |
| | | // let ul = _this.fileList.map(function (elem){ |
| | | // return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | // }).join(",") |
| | | // let uls = _this.fileListOther.map(function (elem){ |
| | | // return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") |
| | | // }).join(",") |
| | | //console.log(_this.fileList) |
| | | // alert(response.fileNames) |
| | | _this.formData.url = _this.formData.url+","+response.fileNames |
| | | _this.uploadFileList = [] |
| | | // alert(87) |
| | | updateEconomy(_this.formData).then(response => { |
| | | _this.$modal.msgSuccess("图片上传成功"); |
| | | // this.open = false; |
| | | |
| | | }); |
| | | // } |
| | | // else{ |
| | | // _this.fileListOther.push({name:response.data.fileName, url:response.data.url}) |
| | | |
| | | // } |
| | | }); |
| | | }, |
| | | requestUpload(params) |
| | | { |
| | | // alert(124) |
| | | // this.uploadFileList.push(params.file); |
| | | |
| | | //alert(34) |
| | | |
| | | |
| | | }, |
| | | requestUpload1(params) |
| | | { |
| | | // alert(123) |
| | | // this.uploadFileList1.push(params.file); |
| | | // console.log("-----------") |
| | | //console.log(this.uploadFileList1) |
| | | }, |
| | | |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | this.download('/zfEconomy/export', { |
| | | ...this.queryParams |
| | | }, `zfEconomy_${new Date().getTime()}.xlsx`) |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | <style scoped> |
| | | .mt |
| | | { |
| | | position: relative; |
| | |
| | | display: block; |
| | | position: absolute; |
| | | } |
| | | .hide /deep/ .el-upload--picture-card { |
| | | display: none; |
| | | } |
| | | .form{ |
| | | background:center/11% no-repeat url('../../assets/icons/form.png') ; |
| | | } |
| | | </style> |