[HostedByMap] update doibooat mapping to consider the oaStartdate of the journal

This commit is contained in:
Miriam Baglioni 2022-02-16 17:31:18 +01:00
parent 018b358d66
commit fa78d16775
1 changed files with 23 additions and 4 deletions

View File

@ -22,7 +22,10 @@ case class HostedByItemType(
issn: String,
eissn: String,
lissn: String,
openAccess: Boolean
openAccess: Boolean,
oaDate: Int,
reviewProcess: List[String]
) {}
case class DoiBoostAffiliation(
@ -273,6 +276,8 @@ object DoiBoostMappingUtil {
.foreach(i => i.setInstancetype(instanceType.get.getInstancetype))
}
val dateOfAcceptance = publication.getDateofacceptance.getValue
var pub_date = -1
publication
.getInstance()
.asScala
@ -282,10 +287,24 @@ object DoiBoostMappingUtil {
hb.setValue(item.officialname)
hb.setKey(item.id)
if (item.openAccess) {
i.setAccessright(getOpenAccessQualifier())
i.getAccessright.setOpenAccessRoute(OpenAccessRoute.gold)
}
try{
pub_date = LocalDate.parse(dateOfAcceptance, DateTimeFormatter.ofPattern("yyyy-MM-dd")).getYear
}catch {
case e: Exception =>
try{
pub_date =
LocalDate.parse(dateOfAcceptance, DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")).getYear
}catch{
case e: Exception =>
pub_date = Int.MaxValue
}
}
if (pub_date >= item.oaDate) {
i.setAccessright(getOpenAccessQualifier())
i.getAccessright.setOpenAccessRoute(OpenAccessRoute.gold)
}
}
} else {
hb = ModelConstants.UNKNOWN_REPOSITORY
}