diff --git a/Poseiden-skeleton/pom.xml b/Poseiden-skeleton/pom.xml
index a7dcbc04dc..d03b3cd433 100644
--- a/Poseiden-skeleton/pom.xml
+++ b/Poseiden-skeleton/pom.xml
@@ -22,7 +22,7 @@
UTF-8
UTF-8
- 1.8
+ 11
@@ -31,10 +31,23 @@
spring-boot-starter-test
test
+
+
+ org.springframework.data
+ spring-data-jpa
+
org.springframework.boot
spring-boot-starter-data-jpa
+
+ org.hibernate
+ hibernate-core
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
org.springframework.boot
spring-boot-starter-web
@@ -43,6 +56,14 @@
org.springframework.boot
spring-boot-starter-thymeleaf
+
+ org.thymeleaf
+ thymeleaf
+
+
+ org.thymeleaf
+ thymeleaf-spring5
+
org.springframework.boot
spring-boot-starter-security
@@ -52,6 +73,16 @@
spring-boot-devtools
true
+
+ io.springfox
+ springfox-swagger2
+ 2.5.0
+
+
+ io.springfox
+ springfox-swagger-ui
+ 2.5.0
+
mysql
mysql-connector-java
@@ -61,7 +92,6 @@
h2
-
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/Application.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/Application.java
index f53aeb0fba..4fc153be3d 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/Application.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/Application.java
@@ -2,8 +2,14 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+import org.springframework.context.annotation.ComponentScan;
-@SpringBootApplication
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+@EnableSwagger2
+@ComponentScan(basePackages = {"com.nnk.springboot.repositories"})
+@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
public class Application {
public static void main(String[] args) {
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SecurityConfig.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SecurityConfig.java
new file mode 100644
index 0000000000..0b4715d62f
--- /dev/null
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SecurityConfig.java
@@ -0,0 +1,56 @@
+package com.nnk.springboot.config;
+
+import javax.sql.DataSource;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
+import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.security.crypto.password.PasswordEncoder;
+
+@Configuration
+@EnableWebSecurity
+public class SecurityConfig extends WebSecurityConfigurerAdapter {
+
+ @Autowired
+ private DataSource dataSource;
+
+ @Autowired
+ public void configAuthentication(AuthenticationManagerBuilder auth) throws Exception {
+
+ auth.jdbcAuthentication()
+ .dataSource(dataSource)
+ .passwordEncoder(passwordEncoder());
+ }
+
+
+ @Override
+ protected void configure(HttpSecurity http) throws Exception {
+
+ http.authorizeRequests()
+ .antMatchers("/bidList/**", "/curvePoint/**", "/rating/**", "/ruleName/**", "/trade/**").hasAnyAuthority("USER")
+ .antMatchers("/user/**").permitAll()
+ .and()
+ .formLogin()
+ .loginPage("/login")
+ .defaultSuccessUrl("/bidList/list")
+ .and()
+ .logout()
+ .logoutUrl("/app-logout")
+ .logoutSuccessUrl("/")
+ .permitAll();
+
+ }
+
+
+ @Bean
+ public PasswordEncoder passwordEncoder() {
+ return new BCryptPasswordEncoder();
+
+ }
+
+}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SwaggerConfig.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SwaggerConfig.java
new file mode 100644
index 0000000000..a326274121
--- /dev/null
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/config/SwaggerConfig.java
@@ -0,0 +1,22 @@
+package com.nnk.springboot.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+
+@Configuration
+public class SwaggerConfig {
+
+ @Bean
+ public Docket api() {
+ return new Docket(DocumentationType.SWAGGER_2)
+ .select()
+ .apis(RequestHandlerSelectors.basePackage("controllers"))
+ .paths(PathSelectors.any())
+ .build();
+ }
+}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/BidListController.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/BidListController.java
index a31b9b53ca..bc08998b15 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/BidListController.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/BidListController.java
@@ -1,6 +1,9 @@
package com.nnk.springboot.controllers;
import com.nnk.springboot.domain.BidList;
+import com.nnk.springboot.repositories.BidListRepository;
+
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
@@ -15,11 +18,15 @@
@Controller
public class BidListController {
// TODO: Inject Bid service
+
+ @Autowired
+ BidListRepository bidListRepository;
@RequestMapping("/bidList/list")
public String home(Model model)
{
// TODO: call service find all bids to show to the view
+ model.addAttribute("bidList", bidListRepository.findAll());
return "bidList/list";
}
@@ -31,12 +38,19 @@ public String addBidForm(BidList bid) {
@PostMapping("/bidList/validate")
public String validate(@Valid BidList bid, BindingResult result, Model model) {
// TODO: check data valid and save to db, after saving return bid list
+ if (!result.hasErrors()) {
+ bidListRepository.save(bid);
+ model.addAttribute("bid", bidListRepository.findAll());
+ return "redirect:/bidList/list";
+ }
return "bidList/add";
}
@GetMapping("/bidList/update/{id}")
public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
// TODO: get Bid by Id and to model then show to the form
+ BidList bid = bidListRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid bid Id:" + id));
+ model.addAttribute("bid", bid);
return "bidList/update";
}
@@ -44,12 +58,23 @@ public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
public String updateBid(@PathVariable("id") Integer id, @Valid BidList bidList,
BindingResult result, Model model) {
// TODO: check required fields, if valid call service to update Bid and return list Bid
- return "redirect:/bidList/list";
+ if (result.hasErrors()) {
+ return"bidList/update";
+ }
+
+ BidList bid = bidListRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid bid Id:" + id));
+ bid.setBidListId(id);
+ bidListRepository.save(bid);
+ model.addAttribute("bid", bidListRepository.findAll());
+ return "redirect:/bidList/list";
}
@GetMapping("/bidList/delete/{id}")
public String deleteBid(@PathVariable("id") Integer id, Model model) {
// TODO: Find Bid by Id and delete the bid, return to Bid list
- return "redirect:/bidList/list";
+ BidList bid = bidListRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid bid Id:" + id));
+ bidListRepository.delete(bid);
+ model.addAttribute("bid", bidListRepository.findAll());
+ return "redirect:/bidList/list";
}
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/CurveController.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/CurveController.java
index db69caf549..26dc759ac2 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/CurveController.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/CurveController.java
@@ -1,6 +1,9 @@
package com.nnk.springboot.controllers;
import com.nnk.springboot.domain.CurvePoint;
+import com.nnk.springboot.repositories.CurvePointRepository;
+
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
@@ -14,12 +17,15 @@
@Controller
public class CurveController {
// TODO: Inject Curve Point service
+ @Autowired
+ CurvePointRepository curveRepository;
@RequestMapping("/curvePoint/list")
public String home(Model model)
{
// TODO: find all Curve Point, add to model
- return "curvePoint/list";
+ model.addAttribute("curves", curveRepository.findAll());
+ return "curvePoint/list";
}
@GetMapping("/curvePoint/add")
@@ -30,12 +36,20 @@ public String addBidForm(CurvePoint bid) {
@PostMapping("/curvePoint/validate")
public String validate(@Valid CurvePoint curvePoint, BindingResult result, Model model) {
// TODO: check data valid and save to db, after saving return Curve list
+ if (!result.hasErrors()) {
+ curveRepository.save(curvePoint);
+ model.addAttribute("curves", curveRepository.findAll());
+ return "redirect:/curvePoint/list";
+ }
return "curvePoint/add";
}
@GetMapping("/curvePoint/update/{id}")
public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
// TODO: get CurvePoint by Id and to model then show to the form
+ CurvePoint curve = curveRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid curvePoint Id:" + id));
+ curve.setId(id);
+ model.addAttribute("curve", curve);
return "curvePoint/update";
}
@@ -43,12 +57,22 @@ public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
public String updateBid(@PathVariable("id") Integer id, @Valid CurvePoint curvePoint,
BindingResult result, Model model) {
// TODO: check required fields, if valid call service to update Curve and return Curve list
+ if (result.hasErrors()) {
+ return "curvePoint/update";
+
+ }
+ curvePoint.setId(id);
+ curveRepository.save(curvePoint);
+ model.addAttribute("curves", curveRepository.findAll());
return "redirect:/curvePoint/list";
}
@GetMapping("/curvePoint/delete/{id}")
public String deleteBid(@PathVariable("id") Integer id, Model model) {
// TODO: Find Curve by Id and delete the Curve, return to Curve list
- return "redirect:/curvePoint/list";
+ CurvePoint curve = curveRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid curvePoint Id:" + id));
+ curveRepository.delete(curve);
+ model.addAttribute("curves", curveRepository.findAll());
+ return "redirect:/curvePoint/list";
}
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RatingController.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RatingController.java
index 5e15e68fbc..c4156cd555 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RatingController.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RatingController.java
@@ -1,6 +1,9 @@
package com.nnk.springboot.controllers;
import com.nnk.springboot.domain.Rating;
+import com.nnk.springboot.repositories.RatingRepository;
+
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
@@ -13,13 +16,19 @@
@Controller
public class RatingController {
+
+
// TODO: Inject Rating service
+ @Autowired
+ RatingRepository ratingRepository;
+
@RequestMapping("/rating/list")
public String home(Model model)
{
// TODO: find all Rating, add to model
- return "rating/list";
+ model.addAttribute("rating", ratingRepository.findAll());
+ return "rating/list";
}
@GetMapping("/rating/add")
@@ -30,25 +39,42 @@ public String addRatingForm(Rating rating) {
@PostMapping("/rating/validate")
public String validate(@Valid Rating rating, BindingResult result, Model model) {
// TODO: check data valid and save to db, after saving return Rating list
+ if (!result.hasErrors()) {
+ ratingRepository.save(rating);
+ model.addAttribute("rating", ratingRepository.findAll());
+ return "redirect:/rating/add";
+
+ }
return "rating/add";
}
@GetMapping("/rating/update/{id}")
public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
// TODO: get Rating by Id and to model then show to the form
- return "rating/update";
+ Rating rating = ratingRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid rating id:" + id));
+ model.addAttribute("rating", rating);
+ return "rating/update";
}
@PostMapping("/rating/update/{id}")
public String updateRating(@PathVariable("id") Integer id, @Valid Rating rating,
BindingResult result, Model model) {
// TODO: check required fields, if valid call service to update Rating and return Rating list
- return "redirect:/rating/list";
+ if (result.hasErrors()) {
+ return "/rating/list";
+ }
+
+ rating.setId(id);
+ ratingRepository.save(rating);
+ model.addAttribute("rating", ratingRepository.findAll());
+ return "redirect:/rating/list";
}
@GetMapping("/rating/delete/{id}")
public String deleteRating(@PathVariable("id") Integer id, Model model) {
// TODO: Find Rating by Id and delete the Rating, return to Rating list
- return "redirect:/rating/list";
+ Rating rating = ratingRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid rating Id:" + id));
+ ratingRepository.save(rating);
+ return "redirect:/rating/list";
}
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RuleNameController.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RuleNameController.java
index b9e72b1ba6..77732a1911 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RuleNameController.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/RuleNameController.java
@@ -1,6 +1,9 @@
package com.nnk.springboot.controllers;
import com.nnk.springboot.domain.RuleName;
+import com.nnk.springboot.repositories.RuleNameRepository;
+
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
@@ -14,11 +17,14 @@
@Controller
public class RuleNameController {
// TODO: Inject RuleName service
+ @Autowired
+ RuleNameRepository ruleRepository;
@RequestMapping("/ruleName/list")
public String home(Model model)
{
// TODO: find all RuleName, add to model
+ model.addAttribute("rule", ruleRepository.findAll());
return "ruleName/list";
}
@@ -30,25 +36,40 @@ public String addRuleForm(RuleName bid) {
@PostMapping("/ruleName/validate")
public String validate(@Valid RuleName ruleName, BindingResult result, Model model) {
// TODO: check data valid and save to db, after saving return RuleName list
+ if (!result.hasErrors()) {
+ ruleRepository.save(ruleName);
+ return "redirect:/ruleName/list";
+ }
return "ruleName/add";
}
@GetMapping("/ruleName/update/{id}")
public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
// TODO: get RuleName by Id and to model then show to the form
- return "ruleName/update";
+ RuleName ruleName = ruleRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid ruleName Id:" + id));
+ model.addAttribute("rule", ruleName);
+ return "ruleName/update";
}
@PostMapping("/ruleName/update/{id}")
public String updateRuleName(@PathVariable("id") Integer id, @Valid RuleName ruleName,
BindingResult result, Model model) {
// TODO: check required fields, if valid call service to update RuleName and return RuleName list
- return "redirect:/ruleName/list";
+ if (result.hasErrors()) {
+ return "ruleName/update";
+ }
+ ruleName.setId(id);
+ ruleRepository.save(ruleName);
+ model.addAttribute("rules", ruleRepository.findAll());
+ return "redirect:/ruleName/list";
}
@GetMapping("/ruleName/delete/{id}")
public String deleteRuleName(@PathVariable("id") Integer id, Model model) {
// TODO: Find RuleName by Id and delete the RuleName, return to Rule list
+ RuleName rule = ruleRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid ruleName Id:" + id));
+ ruleRepository.delete(rule);
+ model.addAttribute("rules", ruleRepository.findAll());
return "redirect:/ruleName/list";
}
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/TradeController.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/TradeController.java
index 4e667eec22..439d9e0fcb 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/TradeController.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/controllers/TradeController.java
@@ -1,6 +1,9 @@
package com.nnk.springboot.controllers;
import com.nnk.springboot.domain.Trade;
+import com.nnk.springboot.repositories.TradeRepository;
+
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
@@ -13,12 +16,16 @@
@Controller
public class TradeController {
+
// TODO: Inject Trade service
+ @Autowired
+ TradeRepository tradeRepository;
@RequestMapping("/trade/list")
public String home(Model model)
{
// TODO: find all Trade, add to model
+ model.addAttribute("trade", tradeRepository.findAll());
return "trade/list";
}
@@ -30,25 +37,43 @@ public String addUser(Trade bid) {
@PostMapping("/trade/validate")
public String validate(@Valid Trade trade, BindingResult result, Model model) {
// TODO: check data valid and save to db, after saving return Trade list
+ if (!result.hasErrors()) {
+ tradeRepository.save(trade);
+ model.addAttribute("trade", tradeRepository.findAll());
+ return "redirect:/trade/add";
+ }
return "trade/add";
}
@GetMapping("/trade/update/{id}")
public String showUpdateForm(@PathVariable("id") Integer id, Model model) {
// TODO: get Trade by Id and to model then show to the form
- return "trade/update";
+ Trade trade = tradeRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid trade Id:" + id));
+ model.addAttribute("trade", trade);
+ return "trade/update";
}
@PostMapping("/trade/update/{id}")
public String updateTrade(@PathVariable("id") Integer id, @Valid Trade trade,
BindingResult result, Model model) {
// TODO: check required fields, if valid call service to update Trade and return Trade list
- return "redirect:/trade/list";
+ if (result.hasErrors()) {
+ return "trade/update";
+ }
+
+ trade.setTradeId(id);
+ tradeRepository.save(trade);
+ model.addAttribute("trade", tradeRepository.findAll());
+ return "redirect:/trade/list";
}
@GetMapping("/trade/delete/{id}")
public String deleteTrade(@PathVariable("id") Integer id, Model model) {
+
// TODO: Find Trade by Id and delete the Trade, return to Trade list
- return "redirect:/trade/list";
+ Trade trade = tradeRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("Invalid trade Id:" + id));
+ tradeRepository.delete(trade);
+ model.addAttribute("trade", tradeRepository.findAll());
+ return "redirect:/trade/list";
}
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/BidList.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/BidList.java
index 3a0e27efc8..5172ab0b3a 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/BidList.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/BidList.java
@@ -11,5 +11,174 @@
@Entity
@Table(name = "bidlist")
public class BidList {
+
+
+ public BidList() {}
+ public BidList(String account, String type, double bidQuantity) {
+ this.account = account;
+ this.type = type;
+ this.bidQuantity = bidQuantity;
+ }
+
+
+ @Id
+ @GeneratedValue(strategy= GenerationType.AUTO)
+ private Integer BidListId;
+ private String account;
+ private String type;
+ private Double bidQuantity;
+ private Double askQuantity;
+ private Double bid;
+ private Double ask;
+ private String benchmark;
+ private Timestamp bidListDate;
+ private String commentary;
+ private String security;
+ private String status;
+ private String trader;
+ private String book;
+ private String creationName;
+ private Timestamp creationDate;
+ private String revisionName;
+ private Timestamp revisionDate;
+ private String dealName;
+ private String dealType;
+ private String sourceListId;
+ private String side;
+
+
+ public Integer getBidListId() {
+ return BidListId;
+ }
+ public void setBidListId(Integer bidListId) {
+ BidListId = bidListId;
+ }
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String account) {
+ this.account = account;
+ }
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+ public Double getBidQuantity() {
+ return bidQuantity;
+ }
+ public void setBidQuantity(Double bidQuantity) {
+ this.bidQuantity = bidQuantity;
+ }
+ public Double getAskQuantity() {
+ return askQuantity;
+ }
+ public void setAskQuantity(Double askQuantity) {
+ this.askQuantity = askQuantity;
+ }
+ public Double getBid() {
+ return bid;
+ }
+ public void setBid(Double bid) {
+ this.bid = bid;
+ }
+ public Double getAsk() {
+ return ask;
+ }
+ public void setAsk(Double ask) {
+ this.ask = ask;
+ }
+ public String getBenchmark() {
+ return benchmark;
+ }
+ public void setBenchmark(String benchmark) {
+ this.benchmark = benchmark;
+ }
+ public Timestamp getBidListDate() {
+ return bidListDate;
+ }
+ public void setBidListDate(Timestamp bidListDate) {
+ this.bidListDate = bidListDate;
+ }
+ public String getCommentary() {
+ return commentary;
+ }
+ public void setCommentary(String commentary) {
+ this.commentary = commentary;
+ }
+ public String getSecurity() {
+ return security;
+ }
+ public void setSecurity(String security) {
+ this.security = security;
+ }
+ public String getStatus() {
+ return status;
+ }
+ public void setStatus(String status) {
+ this.status = status;
+ }
+ public String getTrader() {
+ return trader;
+ }
+ public void setTrader(String trader) {
+ this.trader = trader;
+ }
+ public String getBook() {
+ return book;
+ }
+ public void setBook(String book) {
+ this.book = book;
+ }
+ public String getCreationName() {
+ return creationName;
+ }
+ public void setCreationName(String creationName) {
+ this.creationName = creationName;
+ }
+ public Timestamp getCreationDate() {
+ return creationDate;
+ }
+ public void setCreationDate(Timestamp creationDate) {
+ this.creationDate = creationDate;
+ }
+ public String getRevisionName() {
+ return revisionName;
+ }
+ public void setRevisionName(String revisionName) {
+ this.revisionName = revisionName;
+ }
+ public Timestamp getRevisionDate() {
+ return revisionDate;
+ }
+ public void setRevisionDate(Timestamp revisionDate) {
+ this.revisionDate = revisionDate;
+ }
+ public String getDealName() {
+ return dealName;
+ }
+ public void setDealName(String dealName) {
+ this.dealName = dealName;
+ }
+ public String getDealType() {
+ return dealType;
+ }
+ public void setDealType(String dealType) {
+ this.dealType = dealType;
+ }
+ public String getSourceListId() {
+ return sourceListId;
+ }
+ public void setSourceListId(String sourceListId) {
+ this.sourceListId = sourceListId;
+ }
+ public String getSide() {
+ return side;
+ }
+ public void setSide(String side) {
+ this.side = side;
+ }
+
// TODO: Map columns in data table BIDLIST with corresponding java fields
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/CurvePoint.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/CurvePoint.java
index 151f80d02f..3171d86344 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/CurvePoint.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/CurvePoint.java
@@ -11,5 +11,62 @@
@Entity
@Table(name = "curvepoint")
public class CurvePoint {
+
+
+ public CurvePoint() {}
+ //A voir !!
+ public CurvePoint(int id, double term, double value) {
+ this.id = id;
+ this.term = term;
+ this.value = value;
+
+ }
+
+ @Id
+ @GeneratedValue(strategy= GenerationType.AUTO)
+ private Integer id;
+ private Integer curveId;
+ private Timestamp asOfDate;
+ private Double term;
+ private Double value;
+ private Timestamp creationDate;
+
+ public Integer getId() {
+ return id;
+ }
+ public void setId(Integer id) {
+ this.id = id;
+ }
+ public Integer getCurveId() {
+ return curveId;
+ }
+ public void setCurveId(Integer curveId) {
+ this.curveId = curveId;
+ }
+ public Timestamp getAsOfDate() {
+ return asOfDate;
+ }
+ public void setAsOfDate(Timestamp asOfDate) {
+ this.asOfDate = asOfDate;
+ }
+ public Double getTerm() {
+ return term;
+ }
+ public void setTerm(Double term) {
+ this.term = term;
+ }
+ public Double getValue() {
+ return value;
+ }
+ public void setValue(Double value) {
+ this.value = value;
+ }
+ public Timestamp getCreationDate() {
+ return creationDate;
+ }
+ public void setCreationDate(Timestamp creationDate) {
+ this.creationDate = creationDate;
+ }
+
// TODO: Map columns in data table CURVEPOINT with corresponding java fields
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Rating.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Rating.java
index 12d1be58c0..55b73b1027 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Rating.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Rating.java
@@ -8,5 +8,53 @@
@Entity
@Table(name = "rating")
public class Rating {
+
+ public Rating() {}
+ public Rating(String moodysRating, String sandPRating, String fitchRating, int orderNumber ) {
+
+ this.moodysRating = moodysRating;
+ this.sandPRating = sandPRating;
+ this.fitchRating = fitchRating;
+ this.orderNumber = orderNumber;
+
+ }
+
+ @GeneratedValue(strategy= GenerationType.AUTO)
+ private Integer id;
+ private String moodysRating;
+ private String sandPRating;
+ private String fitchRating;
+ private Integer orderNumber;
+
// TODO: Map columns in data table RATING with corresponding java fields
+ public Integer getId() {
+ return id;
+ }
+ public void setId(Integer id) {
+ this.id = id;
+ }
+ public String getMoodysRating() {
+ return moodysRating;
+ }
+ public void setMoodysRating(String moodysRating) {
+ this.moodysRating = moodysRating;
+ }
+ public String getSandPRating() {
+ return sandPRating;
+ }
+ public void setSandPRating(String sandPRating) {
+ this.sandPRating = sandPRating;
+ }
+ public String getFitchRating() {
+ return fitchRating;
+ }
+ public void setFitchRating(String fitchRating) {
+ this.fitchRating = fitchRating;
+ }
+ public Integer getOrderNumber() {
+ return orderNumber;
+ }
+ public void setOrderNumber(Integer orderNumber) {
+ this.orderNumber = orderNumber;
+ }
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/RuleName.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/RuleName.java
index b8ac970edf..2dff7bdb61 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/RuleName.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/RuleName.java
@@ -7,5 +7,73 @@
@Entity
@Table(name = "rulename")
public class RuleName {
+
+ public RuleName() {}
+ public RuleName(String name, String description, String json, String template, String sqlStr, String sqlPart ) {
+
+ this.name = name;
+ this.description = description;
+ this.json = json;
+ this.template = template;
+ this.sqlStr = sqlStr;
+ this.sqlPart = sqlPart;
+
+ }
+
+
+
+ @Id
+ @GeneratedValue(strategy= GenerationType.AUTO)
+ private Integer id;
+ private String name;
+ private String description;
+ private String json;
+ private String template;
+ private String sqlStr;
+ private String sqlPart;
+
+ public Integer getId() {
+ return id;
+ }
+ public void setId(Integer id) {
+ this.id = id;
+ }
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+ public String getDescription() {
+ return description;
+ }
+ public void setDescription(String description) {
+ this.description = description;
+ }
+ public String getJson() {
+ return json;
+ }
+ public void setJson(String json) {
+ this.json = json;
+ }
+ public String getTemplate() {
+ return template;
+ }
+ public void setTemplate(String template) {
+ this.template = template;
+ }
+ public String getSqlStr() {
+ return sqlStr;
+ }
+ public void setSqlStr(String sqlStr) {
+ this.sqlStr = sqlStr;
+ }
+ public String getSqlPart() {
+ return sqlPart;
+ }
+ public void setSqlPart(String sqlPart) {
+ this.sqlPart = sqlPart;
+ }
+
// TODO: Map columns in data table RULENAME with corresponding java fields
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Trade.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Trade.java
index b6db7c13b7..a5f9ec3d3e 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Trade.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/Trade.java
@@ -8,5 +8,162 @@
@Entity
@Table(name = "trade")
public class Trade {
- // TODO: Map columns in data table TRADE with corresponding java fields
+
+ public Trade() {}
+ public Trade(String account, String type) {
+ this.account = account;
+ this.type = type;
+ }
+
+ @Id
+ @GeneratedValue(strategy= GenerationType.AUTO)
+ private Integer tradeId;
+ private String account;
+ private String type;
+ private Double buyQuantity;
+ private Double sellQuantity;
+ private Double buyPrice;
+ private Double sellPrice;
+ private String benchmark;
+ private Timestamp tradeDate;
+ private String security;
+ private String status;
+ private String trader;
+ private String book;
+ private String creationName;
+ private Timestamp creationDate;
+ private String revisionName;
+ private Timestamp revisionDate;
+ private String dealName;
+ private String dealType;
+ private String sourceListId;
+ private String side;
+
+ // TODO: Map columns in data table TRADE with corresponding java fields
+ public Integer getTradeId() {
+ return tradeId;
+ }
+ public void setTradeId(Integer tradeId) {
+ this.tradeId = tradeId;
+ }
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String account) {
+ this.account = account;
+ }
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+ public Double getBuyQuantity() {
+ return buyQuantity;
+ }
+ public void setBuyQuantity(Double buyQuantity) {
+ this.buyQuantity = buyQuantity;
+ }
+ public Double getSellQuantity() {
+ return sellQuantity;
+ }
+ public void setSellQuantity(Double sellQuantity) {
+ this.sellQuantity = sellQuantity;
+ }
+ public Double getBuyPrice() {
+ return buyPrice;
+ }
+ public void setBuyPrice(Double buyPrice) {
+ this.buyPrice = buyPrice;
+ }
+ public Double getSellPrice() {
+ return sellPrice;
+ }
+ public void setSellPrice(Double sellPrice) {
+ this.sellPrice = sellPrice;
+ }
+ public String getBenchmark() {
+ return benchmark;
+ }
+ public void setBenchmark(String benchmark) {
+ this.benchmark = benchmark;
+ }
+ public Timestamp getTradeDate() {
+ return tradeDate;
+ }
+ public void setTradeDate(Timestamp tradeDate) {
+ this.tradeDate = tradeDate;
+ }
+ public String getSecurity() {
+ return security;
+ }
+ public void setSecurity(String security) {
+ this.security = security;
+ }
+ public String getStatus() {
+ return status;
+ }
+ public void setStatus(String status) {
+ this.status = status;
+ }
+ public String getTrader() {
+ return trader;
+ }
+ public void setTrader(String trader) {
+ this.trader = trader;
+ }
+ public String getBook() {
+ return book;
+ }
+ public void setBook(String book) {
+ this.book = book;
+ }
+ public String getCreationName() {
+ return creationName;
+ }
+ public void setCreationName(String creationName) {
+ this.creationName = creationName;
+ }
+ public Timestamp getCreationDate() {
+ return creationDate;
+ }
+ public void setCreationDate(Timestamp creationDate) {
+ this.creationDate = creationDate;
+ }
+ public String getRevisionName() {
+ return revisionName;
+ }
+ public void setRevisionName(String revisionName) {
+ this.revisionName = revisionName;
+ }
+ public Timestamp getRevisionDate() {
+ return revisionDate;
+ }
+ public void setRevisionDate(Timestamp revisionDate) {
+ this.revisionDate = revisionDate;
+ }
+ public String getDealName() {
+ return dealName;
+ }
+ public void setDealName(String dealName) {
+ this.dealName = dealName;
+ }
+ public String getDealType() {
+ return dealType;
+ }
+ public void setDealType(String dealType) {
+ this.dealType = dealType;
+ }
+ public String getSourceListId() {
+ return sourceListId;
+ }
+ public void setSourceListId(String sourceListId) {
+ this.sourceListId = sourceListId;
+ }
+ public String getSide() {
+ return side;
+ }
+ public void setSide(String side) {
+ this.side = side;
+ }
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/User.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/User.java
index 2be0b8c4ab..d20e1341da 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/User.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/domain/User.java
@@ -1,7 +1,10 @@
package com.nnk.springboot.domain;
+
import javax.persistence.*;
import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Pattern;
+
@Entity
@Table(name = "users")
@@ -12,6 +15,7 @@ public class User {
@NotBlank(message = "Username is mandatory")
private String username;
@NotBlank(message = "Password is mandatory")
+ @Pattern(regexp = "(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,}", message = "Password must have at least one capital letter, 8 characters one number and one symbol")
private String password;
@NotBlank(message = "FullName is mandatory")
private String fullname;
@@ -57,4 +61,5 @@ public String getRole() {
public void setRole(String role) {
this.role = role;
}
+
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/BidListRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/BidListRepository.java
index f74b94e51d..e5c4f116b5 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/BidListRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/BidListRepository.java
@@ -1,9 +1,11 @@
package com.nnk.springboot.repositories;
-import com.nnk.springboot.domain.BidList;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+import com.nnk.springboot.domain.BidList;
+@Repository
public interface BidListRepository extends JpaRepository {
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/CurvePointRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/CurvePointRepository.java
index b01751b53e..fca71f3416 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/CurvePointRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/CurvePointRepository.java
@@ -2,8 +2,10 @@
import com.nnk.springboot.domain.CurvePoint;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+@Repository
public interface CurvePointRepository extends JpaRepository {
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RatingRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RatingRepository.java
index 7ded405e6d..ded1e8a0ed 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RatingRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RatingRepository.java
@@ -2,7 +2,9 @@
import com.nnk.springboot.domain.Rating;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+@Repository
public interface RatingRepository extends JpaRepository {
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RuleNameRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RuleNameRepository.java
index 8053d1612e..a805586b44 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RuleNameRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/RuleNameRepository.java
@@ -2,7 +2,8 @@
import com.nnk.springboot.domain.RuleName;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
-
+@Repository
public interface RuleNameRepository extends JpaRepository {
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/TradeRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/TradeRepository.java
index e8da38af02..50e9b39a15 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/TradeRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/TradeRepository.java
@@ -2,7 +2,8 @@
import com.nnk.springboot.domain.Trade;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
-
+@Repository
public interface TradeRepository extends JpaRepository {
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/UserRepository.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/UserRepository.java
index b6a3363949..0a3b203e71 100644
--- a/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/UserRepository.java
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/repositories/UserRepository.java
@@ -5,8 +5,12 @@
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
+import org.springframework.stereotype.Repository;
-
+@Repository
public interface UserRepository extends JpaRepository, JpaSpecificationExecutor {
+
+ User findByUsername(String username);
+
}
diff --git a/Poseiden-skeleton/src/main/java/com/nnk/springboot/services/UserServices.java b/Poseiden-skeleton/src/main/java/com/nnk/springboot/services/UserServices.java
new file mode 100644
index 0000000000..a803211a55
--- /dev/null
+++ b/Poseiden-skeleton/src/main/java/com/nnk/springboot/services/UserServices.java
@@ -0,0 +1,41 @@
+package com.nnk.springboot.services;
+
+import java.util.Collections;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.GrantedAuthority;
+import org.springframework.security.core.authority.SimpleGrantedAuthority;
+import org.springframework.security.core.userdetails.UserDetails;
+import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.core.userdetails.UsernameNotFoundException;
+import org.springframework.stereotype.Service;
+
+import com.nnk.springboot.domain.User;
+import com.nnk.springboot.repositories.UserRepository;
+
+@Service
+public class UserServices implements UserDetailsService {
+
+
+ @Autowired
+ UserRepository userRepository;
+
+ @Override
+ public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
+ // TODO Auto-generated method stub
+
+
+ User user = userRepository.findByUsername(username);
+
+ if (user == null) {
+
+ throw new UsernameNotFoundException(username);
+ }
+
+ GrantedAuthority grantedAuthority = new SimpleGrantedAuthority(user.getRole());
+ UserDetails userDetails = new org.springframework.security.core.userdetails.User(user.getUsername(), user.getPassword(), Collections.singletonList(grantedAuthority));
+
+ return userDetails;
+ }
+
+}
diff --git a/Poseiden-skeleton/src/main/resources/application.properties b/Poseiden-skeleton/src/main/resources/application.properties
index 8b194cc76e..e5a427b6a2 100644
--- a/Poseiden-skeleton/src/main/resources/application.properties
+++ b/Poseiden-skeleton/src/main/resources/application.properties
@@ -2,10 +2,12 @@
logging.level.org.springframework=INFO
################### DataSource Configuration ##########################
-spring.datasource.driver-class-name=com.mysql.jdbc.Driver
+spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
+spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.datasource.url=jdbc:mysql://localhost:3306/demo
spring.datasource.username=root
-spring.datasource.password=
+spring.datasource.password=rootroot
+spring.sql.init.mode=always
################### Hibernate Configuration ##########################
diff --git a/Poseiden-skeleton/src/main/resources/banner.txt b/Poseiden-skeleton/src/main/resources/banner.txt
new file mode 100644
index 0000000000..7d199bf89d
--- /dev/null
+++ b/Poseiden-skeleton/src/main/resources/banner.txt
@@ -0,0 +1,8 @@
+ ________ ________ ________ _______ ___ ________ ________ ________ ___ ________ ________
+|\ __ \|\ __ \|\ ____\|\ ___ \ |\ \|\ ___ \|\ __ \|\ ___ \ |\ \|\ ___ \|\ ____\
+\ \ \|\ \ \ \|\ \ \ \___|\ \ __/|\ \ \ \ \_|\ \ \ \|\ \ \ \\ \ \ \ \ \ \ \\ \ \ \ \___|
+ \ \ ____\ \ \\\ \ \_____ \ \ \_|/_\ \ \ \ \ \\ \ \ \\\ \ \ \\ \ \ \ \ \ \ \\ \ \ \ \
+ \ \ \___|\ \ \\\ \|____|\ \ \ \_|\ \ \ \ \ \_\\ \ \ \\\ \ \ \\ \ \ \ \ \ \ \\ \ \ \ \____ ___
+ \ \__\ \ \_______\____\_\ \ \_______\ \__\ \_______\ \_______\ \__\\ \__\ \ \__\ \__\\ \__\ \_______\\__\
+ \|__| \|_______|\_________\|_______|\|__|\|_______|\|_______|\|__| \|__| \|__|\|__| \|__|\|_______\|__|
+ \|_________|
\ No newline at end of file
diff --git a/Poseiden-skeleton/src/main/resources/templates/bidList/add.html b/Poseiden-skeleton/src/main/resources/templates/bidList/add.html
index c0fb91a99e..365b89f620 100644
--- a/Poseiden-skeleton/src/main/resources/templates/bidList/add.html
+++ b/Poseiden-skeleton/src/main/resources/templates/bidList/add.html
@@ -18,6 +18,35 @@ Add New Bid
+
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/bidList/list.html b/Poseiden-skeleton/src/main/resources/templates/bidList/list.html
index 84a1d14a12..a4096ec418 100644
--- a/Poseiden-skeleton/src/main/resources/templates/bidList/list.html
+++ b/Poseiden-skeleton/src/main/resources/templates/bidList/list.html
@@ -38,6 +38,16 @@
+
+ |
+ |
+ |
+ |
+
+ Edit |
+ Delete
+ |
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/bidList/update.html b/Poseiden-skeleton/src/main/resources/templates/bidList/update.html
index 7786ebd1ff..839acb07ca 100644
--- a/Poseiden-skeleton/src/main/resources/templates/bidList/update.html
+++ b/Poseiden-skeleton/src/main/resources/templates/bidList/update.html
@@ -17,6 +17,35 @@ Update Bid
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/curvePoint/add.html b/Poseiden-skeleton/src/main/resources/templates/curvePoint/add.html
index 28d17cb645..8529262357 100644
--- a/Poseiden-skeleton/src/main/resources/templates/curvePoint/add.html
+++ b/Poseiden-skeleton/src/main/resources/templates/curvePoint/add.html
@@ -18,7 +18,35 @@ Add New Curve Point
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/curvePoint/list.html b/Poseiden-skeleton/src/main/resources/templates/curvePoint/list.html
index 469836149b..e0bdbf215b 100644
--- a/Poseiden-skeleton/src/main/resources/templates/curvePoint/list.html
+++ b/Poseiden-skeleton/src/main/resources/templates/curvePoint/list.html
@@ -38,6 +38,16 @@
+
+ |
+ |
+ |
+ |
+
+ Edit
+ Delete
+ |
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/rating/add.html b/Poseiden-skeleton/src/main/resources/templates/rating/add.html
index 8090e5382e..234ee190e9 100644
--- a/Poseiden-skeleton/src/main/resources/templates/rating/add.html
+++ b/Poseiden-skeleton/src/main/resources/templates/rating/add.html
@@ -18,7 +18,41 @@ Add New Rating
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/rating/list.html b/Poseiden-skeleton/src/main/resources/templates/rating/list.html
index bfbb403b84..bf9ffbab3b 100644
--- a/Poseiden-skeleton/src/main/resources/templates/rating/list.html
+++ b/Poseiden-skeleton/src/main/resources/templates/rating/list.html
@@ -39,6 +39,17 @@
+
+ |
+ |
+ |
+ |
+ |
+
+ Edit
+ Delete
+ |
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/rating/update.html b/Poseiden-skeleton/src/main/resources/templates/rating/update.html
index 1e1914100a..a5828c6cc1 100644
--- a/Poseiden-skeleton/src/main/resources/templates/rating/update.html
+++ b/Poseiden-skeleton/src/main/resources/templates/rating/update.html
@@ -18,6 +18,42 @@ Update Rating
+
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/ruleName/add.html b/Poseiden-skeleton/src/main/resources/templates/ruleName/add.html
index afb0c2730b..90789782ac 100644
--- a/Poseiden-skeleton/src/main/resources/templates/ruleName/add.html
+++ b/Poseiden-skeleton/src/main/resources/templates/ruleName/add.html
@@ -18,7 +18,56 @@ Add New Rule
+
+
+
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/ruleName/list.html b/Poseiden-skeleton/src/main/resources/templates/ruleName/list.html
index 2ad3868e82..6b30c7295c 100644
--- a/Poseiden-skeleton/src/main/resources/templates/ruleName/list.html
+++ b/Poseiden-skeleton/src/main/resources/templates/ruleName/list.html
@@ -41,6 +41,19 @@
+
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+
+ Edit
+ Delete
+ |
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/ruleName/update.html b/Poseiden-skeleton/src/main/resources/templates/ruleName/update.html
index 34e6c3cc60..12ed33afcb 100644
--- a/Poseiden-skeleton/src/main/resources/templates/ruleName/update.html
+++ b/Poseiden-skeleton/src/main/resources/templates/ruleName/update.html
@@ -18,7 +18,56 @@ Update New Rule
+
+
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/trade/add.html b/Poseiden-skeleton/src/main/resources/templates/trade/add.html
index 6fafa08c01..9cac354c00 100644
--- a/Poseiden-skeleton/src/main/resources/templates/trade/add.html
+++ b/Poseiden-skeleton/src/main/resources/templates/trade/add.html
@@ -18,7 +18,35 @@ Add New Trade
+
+
+
+
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/trade/list.html b/Poseiden-skeleton/src/main/resources/templates/trade/list.html
index 2a247fa7da..822acad26d 100644
--- a/Poseiden-skeleton/src/main/resources/templates/trade/list.html
+++ b/Poseiden-skeleton/src/main/resources/templates/trade/list.html
@@ -38,6 +38,16 @@
+
+ |
+ |
+ |
+ |
+
+ Edit |
+ Delete
+ |
+
diff --git a/Poseiden-skeleton/src/main/resources/templates/trade/update.html b/Poseiden-skeleton/src/main/resources/templates/trade/update.html
index f4bbc52592..6032f7b1a0 100644
--- a/Poseiden-skeleton/src/main/resources/templates/trade/update.html
+++ b/Poseiden-skeleton/src/main/resources/templates/trade/update.html
@@ -17,6 +17,35 @@ Update Trade
+
+
+
+
+