cellsysArt/material.js
2025-03-27 11:15:56 +08:00

59 lines
1.6 KiB
JavaScript

import { EditTask } from "./artUtil.js";
import { artApi } from "./artApi";
class Material {
constructor(params) {
if (!params) {
params = {};
}
this.id = params.id;
this.name = params.name;
this.description = params.description;
this.images = params.images || null;
this.materialTypeId = params.material_type_id; //材料类型ID
this.materialType = params.material_type;
this.creator = params.creator;
this.updater = params.updater;
this.createTime = params.create_time;
this.updateTime = params.update_time;
}
//封面图(表格展示缩略图)
get imageUrlPreviewPath() {
if (this.images && this.images.length > 0) {
return this.images[0].previewPath;
}
}
get imageUrlimgPath() {
if (this.images && this.images.length > 0) {
return this.images[0].imgPath;
}
}
updateMaterial(params) {
let { name, description, images } = params;
let editTask = new EditTask(artApi.materialUpdate);
editTask.addParam("_id", this.id);
editTask.addParam("_description", description);
editTask.addParam("_name", name);
editTask.addParam("_images", images);
return new Promise((resolve, reject) => {
editTask
.execute()
.then((res) => {
if (res.data) {
let material = new Material(res.data);
resolve(material);
}
})
.catch((err) => {
reject(err);
});
});
}
deleteMaterial(params) {
let editTask = new EditTask(artApi.materialDelete);
editTask.addParam("_id", this.id);
return editTask.execute();
}
}
export default Material;