xsi:noNamespaceSchemaLocation="../../defs/technical-component-definition.xsd">
<name>mysql-persistence</name>
<description>Couche de persistence MySql</description>
- <release>5.0.6.0</release>
+ <release>5.0.6.0+</release>
<url>http://xemelios.org/updatesV5/mysql-persistence</url>
<type>COMPOSANT</type>
<destination>
<component-ref url="http://xemelios.org/updatesV5/manifeste2" release="5.0.0.2"/>
</requires>
<release-notes>
+ <note visibility="dev">FA-MiniFin-Xemelios-0811 : problème accès PJ paye</note>
<release v="5.0.6.0">
<note visibility="dev">FA-MiniFin-Xemelios-0802 : PJ / VdP</note>
</release>
}
@Override
- public PJRef getPj(final Pair collectivite, final String pjId, final XemeliosUser user) throws DataConfigurationException, DataAccessException, UnauthorizedException {
+ public PJRef getPj(final Pair collectivite, final PJRefInfo pjRefInfo, final XemeliosUser user) throws DataConfigurationException, DataAccessException, UnauthorizedException {
if (!user.hasRole(XemeliosUser.ROLE_SEARCH)) {
throw new UnauthorizedException("Vous n'êtes pas autorisé à faire des recherches");
}
Connection con = null;
PreparedStatement ps = null;
PJRef pj = null;
- MySqlDataLayer.logger.debug("getting " + pjId + " in " + collectivite.key);
+ MySqlDataLayer.logger.debug("getting " + pjRefInfo.getId() + " in " + collectivite.key);
try {
con = this.getConnection();
final StringBuilder sb = new StringBuilder();
- sb.append("SELECT FILE_NAME, DATA FROM ATTACHMENTS WHERE COLLECTIVITE=? AND PJ_NAME=?");
+ sb.append("SELECT FILE_NAME, DATA FROM ATTACHMENTS WHERE COLLECTIVITE=? AND PJ_NAME IN (?, ?)");
ps = con.prepareStatement(sb.toString());
ps.setString(1, collectivite.key);
- ps.setString(2, pjId);
+ ps.setString(2, pjRefInfo.getId());
+ ps.setString(3, PJRef.generatePjNameFromFileName(pjRefInfo.getNom()));
final ResultSet rs = ps.executeQuery();
if (rs.next()) {
pj = new PJRef();
try {
con = this.getConnection();
final StringBuilder sb = new StringBuilder();
- sb.append("SELECT 1 FROM ATTACHMENTS WHERE COLLECTIVITE=? AND PJ_NAME=?");
+ sb.append("SELECT 1 FROM ATTACHMENTS WHERE COLLECTIVITE=? AND PJ_NAME IN (?, ?)");
ps = con.prepareStatement(sb.toString());
ps.setString(1, collectivite.key);
ps.setString(2, pjRefInfo.getId());
+ ps.setString(3, PJRef.generatePjNameFromFileName(pjRefInfo.getNom()));
final ResultSet rs = ps.executeQuery();
if (rs.next()) {
ret = true;