Commit 4cdefc0b by Samir Sadykhov

add rest updateMask - запись номера по шаблону

parent 30a697b6
package kz.arta.documentServices.dao;
import kz.arta.documentServices.util.ConnectionPool;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.naming.NamingException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DocumentDAO {
private static final Logger LOGGER = LoggerFactory.getLogger(DocumentDAO.class);
public boolean updateUserMask(String documentID, String numberTemplate) throws SQLException, NamingException {
Connection con = null;
try {
con = ConnectionPool.getConnection();
PreparedStatement ps = con.prepareStatement(
"UPDATE register_docs rd " +
"JOIN object_folders of ON rd.docID = of.objectID " +
"SET rd.user_mask = ? " +
"WHERE of.folderid = ? " +
"AND of.object_type = '1024'"
);
ps.setString(1, numberTemplate);
ps.setString(2, documentID);
int updated = ps.executeUpdate();
return updated > 0;
} finally {
ConnectionPool.close(con);
}
}
}
\ No newline at end of file
package kz.arta.documentServices.rest.request;
public class UpdateUserMaskRequest {
private String documentID;
private String numberTemplate;
public String getDocumentID() {
return documentID;
}
public void setDocumentID(String documentID) {
this.documentID = documentID;
}
public String getNumberTemplate() {
return numberTemplate;
}
public void setNumberTemplate(String numberTemplate) {
this.numberTemplate = numberTemplate;
}
}
\ No newline at end of file
...@@ -2,6 +2,8 @@ package kz.arta.documentServices.service; ...@@ -2,6 +2,8 @@ package kz.arta.documentServices.service;
import kz.arta.documentServices.rest.PersonApi; import kz.arta.documentServices.rest.PersonApi;
import kz.arta.documentServices.rest.response.*; import kz.arta.documentServices.rest.response.*;
import kz.arta.documentServices.rest.request.UpdateUserMaskRequest;
import kz.arta.documentServices.service.DocumentService;
import kz.arta.documentServices.listeners.DocflowDocumentListener; import kz.arta.documentServices.listeners.DocflowDocumentListener;
import org.slf4j.Logger; import org.slf4j.Logger;
...@@ -150,4 +152,40 @@ public class DocumentRestServices { ...@@ -150,4 +152,40 @@ public class DocumentRestServices {
return Response.status(Response.Status.UNAUTHORIZED).entity(new ErrorPOJO(ErrorCode.EXCEPTION, "Ошибка авторизации")).build(); return Response.status(Response.Status.UNAUTHORIZED).entity(new ErrorPOJO(ErrorCode.EXCEPTION, "Ошибка авторизации")).build();
} }
} }
@POST
@Path("/updateMask")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response updateUserMask(UpdateUserMaskRequest request,
@Context HttpHeaders headers) {
List<String> authHeaders = headers.getRequestHeader(HttpHeaders.AUTHORIZATION);
if (authHeaders == null || authHeaders.isEmpty()) {
return Response.status(Response.Status.UNAUTHORIZED).entity(new ErrorPOJO(ErrorCode.ACCESS_DENIED, "Ошибка авторизации")).build();
}
try {
int statusAuth = PersonApi.checkUserAuth(authHeaders.get(0));
if(statusAuth != 200) {
return Response.status(Response.Status.UNAUTHORIZED).entity(new ErrorPOJO(ErrorCode.ACCESS_DENIED, "Ошибка авторизации")).build();
}
DocumentService service = new DocumentService();
boolean result = service.updateUserMask(
request.getDocumentID(),
request.getNumberTemplate()
);
return Response.ok(new ResponsePOJO(result)).build();
} catch (Exception e) {
LOGGER.error("updateUserMask error", e);
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(new ErrorPOJO(ErrorCode.EXCEPTION, e.getMessage())).build();
}
}
} }
package kz.arta.documentServices.service;
import kz.arta.documentServices.dao.DocumentDAO;
public class DocumentService {
private final DocumentDAO documentDAO = new DocumentDAO();
public boolean updateUserMask(String documentID, String numberTemplate) throws Exception {
if(documentID == null || documentID.isEmpty()) {
throw new Exception("documentID не передан");
}
if(numberTemplate == null || numberTemplate.isEmpty()) {
throw new Exception("numberTemplate не передан");
}
return documentDAO.updateUserMask(documentID, numberTemplate);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment