Compare commits
2 Commits
6af629d16f
...
44c0d2de38
Author | SHA1 | Date | |
---|---|---|---|
![]() |
44c0d2de38 | ||
![]() |
b705f917ea |
@ -7,6 +7,8 @@ import kd.bos.context.RequestContext;
|
|||||||
import kd.bos.dataentity.entity.DynamicObject;
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
import kd.bos.exception.KDException;
|
import kd.bos.exception.KDException;
|
||||||
|
import kd.bos.fileservice.FileServiceFactory;
|
||||||
|
import kd.bos.orm.query.QFilter;
|
||||||
import kd.bos.schedule.executor.AbstractTask;
|
import kd.bos.schedule.executor.AbstractTask;
|
||||||
import kd.bos.servicehelper.AttachmentServiceHelper;
|
import kd.bos.servicehelper.AttachmentServiceHelper;
|
||||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
@ -164,7 +166,7 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask {
|
|||||||
}
|
}
|
||||||
|
|
||||||
SaveServiceHelper.save(new DynamicObject[]{plmObj});
|
SaveServiceHelper.save(new DynamicObject[]{plmObj});
|
||||||
// syncImage(plmObj, list);
|
syncImage(plmObj, list);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -226,6 +228,7 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 同步图片 总成图册明细
|
* 同步图片 总成图册明细
|
||||||
|
*
|
||||||
* @param plmObj
|
* @param plmObj
|
||||||
* @param list
|
* @param list
|
||||||
*/
|
*/
|
||||||
@ -244,25 +247,86 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask {
|
|||||||
} else {
|
} else {
|
||||||
imageName = d.getString("yem_textfield");
|
imageName = d.getString("yem_textfield");
|
||||||
}
|
}
|
||||||
List<DynamicObject> imageInfo = getImageInfo(pictureentry, imageName);
|
|
||||||
|
|
||||||
|
DynamicObject assAtlas = queryMatchAssemblyAtlasDetails(plmObj, d);
|
||||||
|
if (assAtlas == null) continue;
|
||||||
|
List<DynamicObject> imageInfo = getImageInfo(pictureentry, imageName);
|
||||||
|
List<String> successMap = new ArrayList<>();
|
||||||
for (DynamicObject image : imageInfo) {
|
for (DynamicObject image : imageInfo) {
|
||||||
|
String suyntype = image.getString("yem_suyntype");
|
||||||
|
if ("B".equals(suyntype)) continue;
|
||||||
String picturename = image.getString("yem_picturename");
|
String picturename = image.getString("yem_picturename");
|
||||||
int idx = picturename.lastIndexOf(".");
|
int idx = picturename.lastIndexOf(".");
|
||||||
String partno = picturename.substring(0, idx);
|
String partno = picturename.substring(0, idx);
|
||||||
String pictureid = image.getString("yem_pictureid");
|
String pictureid = image.getString("yem_pictureid");
|
||||||
String pictureaddress = image.getString("yem_pictureaddress");
|
|
||||||
Date breakpointtime = getBreakPointTime(detail, partno);
|
Date breakpointtime = getBreakPointTime(detail, partno);
|
||||||
|
|
||||||
DynamicObject attachment = AttachmentServiceHelper.getAttCreatorByUID(pictureid);
|
DynamicObject attachment = AttachmentServiceHelper.getAttCreatorByUID(pictureid);
|
||||||
String url = attachment.getString("ffileid");
|
String url = attachment.getString("ffileid");
|
||||||
// AttachmentUtil.uploadAttachmentPanel("yem_em_assatlasdet", )
|
String fattachmentsize = attachment.getString("fattachmentsize");
|
||||||
|
if (YEM.isEmpty(fattachmentsize) || Long.parseLong(fattachmentsize) == 0) {
|
||||||
|
logger.error("错误的文件!!");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
DynamicObject afterUpload = AttachmentUtil.uploadAttachmentPanel(assAtlas.getDataEntityType().getName(), assAtlas.getPkValue(), "yem_attachmentpanelap", picturename, url);
|
||||||
|
if (afterUpload != null) {
|
||||||
|
// 更新分录
|
||||||
|
afterUpload.set("fattachmentsize", fattachmentsize);
|
||||||
|
SaveServiceHelper.save(new DynamicObject[]{afterUpload});
|
||||||
|
DynamicObjectCollection attach_detail = assAtlas.getDynamicObjectCollection("yem_attdetail");
|
||||||
|
DynamicObject aNew = attach_detail.addNew();
|
||||||
|
String fileaddress = FileServiceFactory.getAttachmentFileService().getFileServiceExt().getRealPath(afterUpload.getString("ffileid"));
|
||||||
|
aNew.set("yem_attname", afterUpload.getString("fattachmentname"));
|
||||||
|
aNew.set("yem_attid", afterUpload.getString("fnumber"));
|
||||||
|
aNew.set("yem_attaddress", fileaddress);
|
||||||
|
aNew.set("yem_breakpointime", breakpointtime);
|
||||||
|
// 更新文件物理地址
|
||||||
|
String imageurl = assAtlas.getString("yem_imageurl");
|
||||||
|
imageurl = imageurl + fileaddress + ";";
|
||||||
|
assAtlas.set("yem_imageurl", imageurl);
|
||||||
|
successMap.add(picturename);
|
||||||
|
} else {
|
||||||
|
logger.info("上传文件失败!!");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
for (DynamicObject dynamicObject : pictureentry) {
|
||||||
|
String picturename = dynamicObject.getString("yem_picturename");
|
||||||
|
if (successMap.contains(picturename)) {
|
||||||
|
dynamicObject.set("yem_suyntype", "B");
|
||||||
|
dynamicObject.set("yem_syncdate", new Date());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SaveServiceHelper.save(new DynamicObject[]{assAtlas});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
SaveServiceHelper.save(new DynamicObject[]{plmObj});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询匹配的 总成图册明细
|
||||||
|
* PLM:变更后父项编码 - 总成图册明细.编码
|
||||||
|
* PLM:变更后子项编码 - 替换关系:ABC 替换编码,E(删除):不匹配,D(新增)替换前编码
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private DynamicObject queryMatchAssemblyAtlasDetails(DynamicObject plmObj, DynamicObject d) {
|
||||||
|
QFilter qFilter = new QFilter("status", "=", "C");
|
||||||
|
String exchangetype = d.getString("yem_exchangetype");
|
||||||
|
String parentno = d.getString("yem_parent_now");
|
||||||
|
String childno = d.getString("yem_child_now");
|
||||||
|
qFilter.and("number", "=", parentno);
|
||||||
|
if ("ABC".contains(exchangetype)) {
|
||||||
|
qFilter.and("yem_entryentity.yem_enablesubno", "=", childno);
|
||||||
|
}
|
||||||
|
if ("D".equals(exchangetype)) {
|
||||||
|
qFilter.and("yem_entryentity.yem_partnumber", "=", childno);
|
||||||
|
}
|
||||||
|
if ("E".equals(exchangetype)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return BusinessDataServiceHelper.loadSingle("yem_em_assatlasdet", qFilter.toArray());
|
||||||
|
}
|
||||||
|
|
||||||
private List<DynamicObject> getImageInfo(DynamicObjectCollection pictureentry, String imageName) {
|
private List<DynamicObject> getImageInfo(DynamicObjectCollection pictureentry, String imageName) {
|
||||||
List<DynamicObject> list = new ArrayList<>();
|
List<DynamicObject> list = new ArrayList<>();
|
||||||
for (DynamicObject d : pictureentry) {
|
for (DynamicObject d : pictureentry) {
|
||||||
|
@ -55,10 +55,11 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask {
|
|||||||
if (plmMatchBom != null && !plmMatchBom) {
|
if (plmMatchBom != null && !plmMatchBom) {
|
||||||
Date stoptime = plm.getDate("yem_stoptime");
|
Date stoptime = plm.getDate("yem_stoptime");
|
||||||
if (YEM.isEmpty(stoptime)) {
|
if (YEM.isEmpty(stoptime)) {
|
||||||
plm.set("yem_enablestatus_before", bom_enablesta);
|
|
||||||
Date downdate = bom.getDate("yem_downdate");
|
Date downdate = bom.getDate("yem_downdate");
|
||||||
|
plm.set("yem_enablestatus_before", bom_enablesta);
|
||||||
plm.set("yem_stoptime", downdate);
|
plm.set("yem_stoptime", downdate);
|
||||||
plm.set("yem_completetime", bom_completetime);
|
plm.set("yem_invoktime", bom_completetime);
|
||||||
|
plm.set("yem_invokstatus", "B");
|
||||||
} else {
|
} else {
|
||||||
logger.info("停用_已有时间,不更新,{},{}", plm_billno, plm_parent);
|
logger.info("停用_已有时间,不更新,{},{}", plm_billno, plm_parent);
|
||||||
}
|
}
|
||||||
@ -70,7 +71,8 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask {
|
|||||||
Date enableddate = bom.getDate("yem_enableddate");
|
Date enableddate = bom.getDate("yem_enableddate");
|
||||||
plm.set("yem_enablesta", bom_enablesta);
|
plm.set("yem_enablesta", bom_enablesta);
|
||||||
plm.set("yem_starttime", enableddate);
|
plm.set("yem_starttime", enableddate);
|
||||||
plm.set("yem_completetime", bom_completetime);
|
plm.set("yem_invoktime", bom_completetime);
|
||||||
|
plm.set("yem_invokstatus", "B");
|
||||||
} else {
|
} else {
|
||||||
logger.info("启用_已有时间,不更新,{},{}", plm_billno, plm_parent);
|
logger.info("启用_已有时间,不更新,{},{}", plm_billno, plm_parent);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user