add expense and up kotlin
This commit is contained in:
@@ -11,6 +11,7 @@ import com.restapi.domain.Session.findDataModelByEntityAndUniqId
|
||||
import com.restapi.integ.Scripting
|
||||
import io.javalin.http.BadRequestResponse
|
||||
import io.javalin.http.Context
|
||||
import io.javalin.http.HttpStatus
|
||||
import io.javalin.http.bodyAsClass
|
||||
import org.slf4j.LoggerFactory
|
||||
import java.time.LocalDate
|
||||
@@ -84,6 +85,7 @@ class QueryParamDeSerializer : JsonDeserializer<QueryParam>() {
|
||||
|
||||
object Entities {
|
||||
private val logger = LoggerFactory.getLogger("Entities")
|
||||
private val OK = mapOf("status" to true)
|
||||
fun delete(ctx: Context) {
|
||||
val e = database.findDataModelByEntityAndUniqId(ctx.pathParam("entity"), ctx.pathParam("id"))
|
||||
e.deletedBy = Session.currentUser()
|
||||
@@ -116,6 +118,7 @@ object Entities {
|
||||
e.data.putAll(newData)
|
||||
|
||||
e.update()
|
||||
ctx.json(OK)
|
||||
}
|
||||
|
||||
private fun verifyKeys(newData: Map<String, Any>) {
|
||||
@@ -152,6 +155,30 @@ object Entities {
|
||||
}
|
||||
|
||||
|
||||
fun getNextSeqNo(ctx: Context) {
|
||||
val entity = ctx.pathParam("entity").uppercase()
|
||||
|
||||
val prefix = "$entity/"
|
||||
val plantId = ctx.queryParam("plantId") ?: throw BadRequestResponse("plantId not sent")
|
||||
val plant = database.find(Plant::class.java)
|
||||
.where()
|
||||
.eq("plantId", plantId)
|
||||
.findOne() ?: throw BadRequestResponse("plant missing for $plantId")
|
||||
|
||||
val inventoryPrefix = plant.prefixes?.get(entity) ?: prefix
|
||||
|
||||
val cnt = (database.find(DataModel::class.java)
|
||||
.where()
|
||||
.eq("entityName", entity.lowercase())
|
||||
.eq("data->>'plantId'", plantId)
|
||||
.findCount() + 1)
|
||||
.toString()
|
||||
.padStart(6, '0')
|
||||
|
||||
val seq = SequenceNumber(inventoryPrefix + cnt)
|
||||
ctx.json(seq).status(HttpStatus.OK)
|
||||
}
|
||||
|
||||
fun view(it: Context) {
|
||||
database.save(
|
||||
AuditLog().apply {
|
||||
@@ -264,6 +291,7 @@ object Entities {
|
||||
this.data = dataModel.data
|
||||
}
|
||||
)
|
||||
ctx.json(OK)
|
||||
}
|
||||
|
||||
private fun isValidDate(f: String) = try {
|
||||
@@ -290,7 +318,7 @@ object Entities {
|
||||
|
||||
data class SearchParams(
|
||||
val params: Map<String, QueryParam> = mapOf(),
|
||||
val dateRange: List<LocalDate> = emptyList()
|
||||
val dateRange: List<LocalDate> = listOf(LocalDate.now().minusDays(7), LocalDate.now())
|
||||
)
|
||||
|
||||
data class SequenceNumber(val number: String)
|
||||
|
||||
Reference in New Issue
Block a user