|
@@ -0,0 +1,193 @@
|
|
|
|
|
+ const _Http = getApp().globalData.http,
|
|
|
|
|
+ MFT = require("../../../../utils/matchingFeilType");
|
|
|
|
|
+ Page({
|
|
|
|
|
+ data: {
|
|
|
|
|
+ detail: null,
|
|
|
|
|
+ isFollow: false,
|
|
|
|
|
+ isSubmit: true, //是否可以提交
|
|
|
|
|
+ files: {
|
|
|
|
|
+ images: [],
|
|
|
|
|
+ viewImages: [],
|
|
|
|
|
+ videos: [],
|
|
|
|
|
+ viewVideos: [],
|
|
|
|
|
+ files: []
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ onLoad(options) {
|
|
|
|
|
+ this.setData({
|
|
|
|
|
+ detail: JSON.parse(options.data),
|
|
|
|
|
+ isFollow: options.isFollow == 'true'
|
|
|
|
|
+ });
|
|
|
|
|
+ if (this.data.detail.attinfos.length != 0) this.handleFiles(MFT.fileList(this.data.detail.attinfos))
|
|
|
|
|
+ if (this.data.detail.notes != '' && this.data.isFollow) this.setData({
|
|
|
|
|
+ isSubmit: false
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 删除文件 */
|
|
|
|
|
+ deleteFile({
|
|
|
|
|
+ detail
|
|
|
|
|
+ }) {
|
|
|
|
|
+ let e = detail,
|
|
|
|
|
+ item = e.detail.attachmentid ? e.detail : e.currentTarget.dataset.item;
|
|
|
|
|
+ _Http.basic({
|
|
|
|
|
+ "classname": "system.attachment.Attachment",
|
|
|
|
|
+ "method": "deleteFileLink",
|
|
|
|
|
+ "content": {
|
|
|
|
|
+ "linksids": [item.linksid]
|
|
|
|
|
+ }
|
|
|
|
|
+ }).then(res => {
|
|
|
|
|
+ if (res.msg != '成功') return wx.showToast({
|
|
|
|
|
+ title: res.data,
|
|
|
|
|
+ icon: "none"
|
|
|
|
|
+ });
|
|
|
|
|
+ let files = this.data.files;
|
|
|
|
|
+ switch (item.fileType) {
|
|
|
|
|
+ case "image":
|
|
|
|
|
+ files.images = files.images.filter(v => v.url != item.url);
|
|
|
|
|
+ files.viewImages = files.viewImages.filter(v => v.url != item.url);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "video":
|
|
|
|
|
+ files.videos = files.videos.filter(v => v.url != item.url);
|
|
|
|
|
+ files.viewVideos = files.viewVideos.filter(v => v.url != item.url);
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ files.files = files.files.filter(v => v.attachmentid != item.attachmentid);
|
|
|
|
|
+ break;
|
|
|
|
|
+ };
|
|
|
|
|
+ this.setData({
|
|
|
|
|
+ files,
|
|
|
|
|
+ "detail.attinfos": this.data.detail.attinfos.filter(v => v.url != item.url)
|
|
|
|
|
+ });
|
|
|
|
|
+ this.changeFile();
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ //文本域输入
|
|
|
|
|
+ onInput(e) {
|
|
|
|
|
+ this.setData({
|
|
|
|
|
+ "detail.notes": e.detail.value
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 绑定媒体 */
|
|
|
|
|
+ insertImgEdit({
|
|
|
|
|
+ detail
|
|
|
|
|
+ }) {
|
|
|
|
|
+ _Http.basic({
|
|
|
|
|
+ "classname": "system.attachment.Attachment",
|
|
|
|
|
+ "method": "createFileLink",
|
|
|
|
|
+ "content": {
|
|
|
|
|
+ "ownertable": "sa_project_stagework",
|
|
|
|
|
+ "ownerid": this.data.detail.sa_project_stageworkid,
|
|
|
|
|
+ "usetype": "default",
|
|
|
|
|
+ "attachmentids": detail
|
|
|
|
|
+ }
|
|
|
|
|
+ }).then(res => {
|
|
|
|
|
+ console.log('跟进记录绑定附件', res)
|
|
|
|
|
+ if (res.msg != '成功') return wx.showToast({
|
|
|
|
|
+ title: res.data,
|
|
|
|
|
+ icon: "none"
|
|
|
|
|
+ })
|
|
|
|
|
+ this.handleFiles(MFT.fileList(res.data));
|
|
|
|
|
+ this.data.detail.attinfos.push(res.data[0])
|
|
|
|
|
+ this.changeFile();
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 处理附件 */
|
|
|
|
|
+ handleFiles(list) {
|
|
|
|
|
+ let files = this.data.files;
|
|
|
|
|
+ list.forEach(v => {
|
|
|
|
|
+ switch (v.fileType) {
|
|
|
|
|
+ case "video":
|
|
|
|
|
+ files.videos.push(v)
|
|
|
|
|
+ files.viewVideos.push({
|
|
|
|
|
+ url: v.url,
|
|
|
|
|
+ type: "video",
|
|
|
|
|
+ poster: v.subfiles[0].url
|
|
|
|
|
+ })
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "image":
|
|
|
|
|
+ files.images.push(v)
|
|
|
|
|
+ files.viewImages.push({
|
|
|
|
|
+ url: v.url,
|
|
|
|
|
+ type: "image"
|
|
|
|
|
+ })
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ files.files.push(v)
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ this.setData({
|
|
|
|
|
+ files
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 修改源文件附件 */
|
|
|
|
|
+ changeFile() {
|
|
|
|
|
+ let pages = getCurrentPages(),
|
|
|
|
|
+ page = pages[pages.length - 2].selectComponent("#Task"),
|
|
|
|
|
+ i = page.data.list[page.data.viewIndex].work.findIndex(v => v.sa_project_stageworkid == this.data.detail.sa_project_stageworkid);
|
|
|
|
|
+ page.setData({
|
|
|
|
|
+ [`list[${page.data.viewIndex}].work[${i}].attinfos`]: this.data.detail.attinfos
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 保存 */
|
|
|
|
|
+ save() {
|
|
|
|
|
+ _Http.basic({
|
|
|
|
|
+ "id": 20221024160202,
|
|
|
|
|
+ "content": {
|
|
|
|
|
+ sa_project_stageworkid: this.data.detail.sa_project_stageworkid,
|
|
|
|
|
+ notes: this.data.detail.notes,
|
|
|
|
|
+ }
|
|
|
|
|
+ }).then(res => {
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ title: res.msg == '成功' ? '保存成功' : res.data,
|
|
|
|
|
+ icon: "none"
|
|
|
|
|
+ });
|
|
|
|
|
+ if (res.msg != '成功') return;
|
|
|
|
|
+ this.setData({
|
|
|
|
|
+ isSubmit: false
|
|
|
|
|
+ })
|
|
|
|
|
+ let pages = getCurrentPages(),
|
|
|
|
|
+ page = pages[pages.length - 2].selectComponent("#Task"),
|
|
|
|
|
+ i = page.data.list[page.data.viewIndex].work.findIndex(v => v.sa_project_stageworkid == this.data.detail.sa_project_stageworkid);
|
|
|
|
|
+ page.setData({
|
|
|
|
|
+ [`list[${page.data.viewIndex}].work[${i}].notes`]: this.data.detail.notes
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ /* 提交 */
|
|
|
|
|
+ submit() {
|
|
|
|
|
+ let that = this;
|
|
|
|
|
+ wx.showModal({
|
|
|
|
|
+ title: '提示',
|
|
|
|
|
+ content: `是否提交该任务,提交后将计算分值(仅可提交一次)`,
|
|
|
|
|
+ complete: ({
|
|
|
|
|
+ confirm
|
|
|
|
|
+ }) => {
|
|
|
|
|
+ if (confirm) _Http.basic({
|
|
|
|
|
+ "id": 20221024160302,
|
|
|
|
|
+ "content": {
|
|
|
|
|
+ "sa_project_stageworkid": that.data.detail.sa_project_stageworkid
|
|
|
|
|
+ }
|
|
|
|
|
+ }).then(res => {
|
|
|
|
|
+ console.log("任务提交", res)
|
|
|
|
|
+ if (res.msg != '成功') return wx.showToast({
|
|
|
|
|
+ title: res.data,
|
|
|
|
|
+ icon: "none"
|
|
|
|
|
+ });
|
|
|
|
|
+ let pages = getCurrentPages(),
|
|
|
|
|
+ page = pages[pages.length - 2].selectComponent("#Task");
|
|
|
|
|
+ pages[pages.length - 2].getDetail();
|
|
|
|
|
+ page.getList();
|
|
|
|
|
+ wx.showToast({
|
|
|
|
|
+ title: '提交成功',
|
|
|
|
|
+ icon: "none"
|
|
|
|
|
+ });
|
|
|
|
|
+ that.setData({
|
|
|
|
|
+ "detail.finished": 1
|
|
|
|
|
+ })
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|