package foundation.state.approve; import foundation.data.entity.Entity; import foundation.json.IJSONProvider; import foundation.json.IJSONWriter; import foundation.persist.NamedSQL; import foundation.persist.SQLRunner; public class WorkingStep implements IJSONProvider { private Entity entity; public WorkingStep() { } public void load(Entity entity) { this.entity = entity; } public String getId() { return entity.getString("id"); } public String getName() { return entity.getString("name"); } public String getMachineId() { return entity.getString("machine_id"); } public String getPointId() { return entity.getString("point_id"); } public String getInStateCode() { return entity.getString("in_state_code"); } public String getOutStateCode() { return entity.getString("out_state_code"); } public boolean isWorking() { return entity.getBoolean("is_active", false); } public int getIndexNo() { return entity.getInteger("index_no", 0); } public boolean includeUser(String userId) throws Exception { NamedSQL namedSQL = NamedSQL.getInstance("getWorkingStepUserCount"); namedSQL.setParam("working_step_id", getId()); namedSQL.setParam("user_id", userId); int cnt = SQLRunner.getInteger(namedSQL); return cnt > 0; } public void writeJSON(IJSONWriter writer) { entity.writeJSON(writer); } }