lc/lc123/cloud/app/plugin/task/DaysRemaining.java

110 lines
5.7 KiB
Java
Raw Normal View History

package tqq9.lc123.cloud.app.plugin.task;
import kd.bos.context.RequestContext;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.exception.KDException;
import kd.bos.logging.Log;
import kd.bos.logging.LogFactory;
import kd.bos.orm.query.QFilter;
import kd.bos.schedule.executor.AbstractTask;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper;
import kd.sdk.plugin.Plugin;
import tqq9.lc123.cloud.app.plugin.operate.sys.ValiddaysSavePlugin;
import tqq9.lc123.cloud.app.plugin.utils.DateDifferenceCalculator;
import java.util.Date;
import java.util.Map;
/**
* 后台任务插件
*/
public class DaysRemaining extends AbstractTask implements Plugin {
private final static Log logger = LogFactory.getLog(DaysRemaining.class);
@Override
public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
DynamicObject[] suppliers = BusinessDataServiceHelper.load("bd_supplier", "" +
"id,number,name,tqq9_datefield1,tqq9_validdays_ylqxsc,tqq9_datefield21,tqq9_validdays_ylqxjy,tqq9_datefield4,tqq9_validdays_ylqxjy2,tqq9_datefield22," +
"tqq9_validdays_yljg,tqq9_licenseenddate,tqq9_validdays_hzp,tqq9_zlbzxyyxqz,tqq9_validdays_zlbz,tqq9_datefield2,tqq9_validdays_gmp,tqq9_datefield7," +
"tqq9_validdays_frsq,tqq9_datefield9,tqq9_validdays_yyzz,tqq9_gspyxqz,tqq9_validdays_gsp", null);
Date currentDate = new Date();//当前日期
long remainingDays = 0;
for (DynamicObject supplier : suppliers) {
//医疗器械生生产许可证
Date tqq9_datefield1 = supplier.getDate("tqq9_datefield1");//失效日期
if (tqq9_datefield1 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield1, currentDate);
supplier.set("tqq9_validdays_ylqxsc", remainingDays);
}
//医疗器械经营许可证
Date tqq9_datefield21 = supplier.getDate("tqq9_datefield21");//失效日期
if (tqq9_datefield21 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield21, currentDate);
supplier.set("tqq9_validdays_ylqxjy", remainingDays);
}
//第二类医疗器械经营备案凭证
Date tqq9_datefield4 = supplier.getDate("tqq9_datefield4");//失效日期
if (tqq9_datefield4 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield4, currentDate);
supplier.set("tqq9_validdays_ylqxjy2", remainingDays);
}
//医疗机构执行许可证
Date tqq9_datefield22 = supplier.getDate("tqq9_datefield22");//失效日期
if (tqq9_datefield22 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield22, currentDate);
supplier.set("tqq9_validdays_yljg", remainingDays);
}
//化妆品许可证
Date tqq9_licenseenddate = supplier.getDate("tqq9_licenseenddate");//失效日期
if (tqq9_licenseenddate != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_licenseenddate, currentDate);
supplier.set("tqq9_validdays_hzp", remainingDays);
}
//质量保证书
Date tqq9_zlbzxyyxqz = supplier.getDate("tqq9_zlbzxyyxqz");//失效日期
if (tqq9_zlbzxyyxqz != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_zlbzxyyxqz, currentDate);
supplier.set("tqq9_validdays_zlbz", remainingDays);
}
//GMP证书
Date tqq9_datefield2 = supplier.getDate("tqq9_datefield2");//失效日期
if (tqq9_datefield2 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield2, currentDate);
supplier.set("tqq9_validdays_gmp", remainingDays);
}
//法人委托授权书
Date tqq9_datefield7 = supplier.getDate("tqq9_datefield7");//失效日期
if (tqq9_datefield7 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield7, currentDate);
supplier.set("tqq9_validdays_frsq", remainingDays);
}
//营业执照
Date tqq9_datefield9 = supplier.getDate("tqq9_datefield9");//失效日期
if (tqq9_datefield9 != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_datefield9, currentDate);
supplier.set("tqq9_validdays_yyzz", remainingDays);
}
//GSP证书
Date tqq9_gspyxqz = supplier.getDate("tqq9_gspyxqz");//失效日期
if (tqq9_gspyxqz != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_gspyxqz, currentDate);
supplier.set("tqq9_validdays_gsp", remainingDays);
}
}
DynamicObject[] tqq9_registration = BusinessDataServiceHelper.load("tqq9_registration", "id,number,name,tqq9_enddate,tqq9_validdays", null);
for (DynamicObject dynamicObject : tqq9_registration) {
//商品注册证
Date tqq9_enddate = dynamicObject.getDate("tqq9_enddate");//失效日期
if (tqq9_enddate != null) {
remainingDays = DateDifferenceCalculator.calculateRemainingDays(tqq9_enddate, currentDate);
dynamicObject.set("tqq9_validdays", remainingDays);
}
}
SaveServiceHelper.save(suppliers);
SaveServiceHelper.save(tqq9_registration);
}
}