Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package workbook
- import grails.plugins.springsecurity.Secured
- import groovy.json.JsonBuilder
- import org.springframework.context.i18n.LocaleContextHolder
- import java.text.DateFormat
- import java.text.SimpleDateFormat
- import static org.springframework.http.HttpStatus.*
- import grails.transaction.Transactional
- @Transactional(readOnly = true)
- @Secured(['IS_AUTHENTICATED_FULLY'])
- class WorkbookController {
- def testService
- def springSecurityService
- def workbooksSearchService
- static allowedMethods = [save: "POST", update: "PUT", delete: "DELETE"]
- def index() {
- if (!LocaleContextHolder.getLocaleContext().getLocale().toString()) {
- session['org.springframework.web.servlet.i18n.SessionLocaleResolver.LOCALE'] = new Locale("ru", "RU")
- }
- render(view: '../index')
- }
- def list(Integer max) {
- params.max = Math.min(max ?: 10, 100)
- respond Workbook.list(params), model: [workbookInstanceCount: Workbook.count(), iTotalDisplayRecords: workbooksSearchService.getResults(params).iTotalDisplayRecords]
- }
- def show() {
- def workbookInstance = Workbook.get(params.id)
- workbookInstance.isDocumentEditable = false
- return [workbookInstance: workbookInstance]
- //respond workbookInstance
- }
- def create() {
- //render(status: "404", text: "Failed to create workbook")
- //testService.serviceMethod()
- //println 'user logged in ' + springSecurityService?.principal?.username
- Workbook workbook = flash.workbook ?: new Workbook()
- workbook.isDocumentEditable = true
- if (workbook.workPlaces == null) {
- workbook.workPlaces = new ArrayList<WorkPlace>()
- }
- session.workbookInstance = workbook
- return [workbookInstance: workbook]
- //respond workbook
- }
- def save() {
- Workbook workbookInstance = session.workbookInstance
- bindData(workbookInstance, params)
- println 'fffffffffffffff ' + workbookInstance.firstName
- if (workbookInstance == null) {
- notFound()
- return
- }
- workbookInstance.validate()
- if (workbookInstance.hasErrors()) {
- println 'eeeeeeeeeeeeeeeeeeeeee'
- workbookInstance.discard()
- flash.workbook = workbookInstance
- redirect(action: 'create')
- //respond workbookInstance.errors, view: 'create'
- return
- }
- workbookInstance.save flush: true
- redirect(action: "show", id: workbookInstance.id)
- //redirect workbookInstance
- /*request.withFormat {
- form multipartForm {
- flash.message = message(code: 'default.created.message', args: [message(code: 'workbookInstance.label', default: 'Workbook'), workbookInstance.id])
- redirect workbookInstance
- }
- '*' { respond workbookInstance, [status: CREATED] }
- }*/
- }
- def edit() {
- def workbookInstance = Workbook.get(params.id)
- workbookInstance.isDocumentEditable = true
- println 'workbook ' + workbookInstance
- session.workbookInstance = workbookInstance
- return [workbookInstance: workbookInstance, errors: workbookInstance.hasErrors()]
- //respond workbookInstance
- }
- @Transactional
- def update() {
- bindData()
- Workbook workbookInstance = session.workbookInstance
- bindData(workbookInstance, params)
- if (workbookInstance == null) {
- notFound()
- return
- }
- workbookInstance.validate()
- if (workbookInstance.hasErrors()) {
- respond workbookInstance.errors, view: 'edit'
- return
- }
- workbookInstance.save flush: true
- redirect(action: "show", id: workbookInstance.id)
- /*request.withFormat {
- form multipartForm {
- flash.message = message(code: 'default.updated.message', args: [message(code: 'Workbook.label', default: 'Workbook'), workbookInstance.id])
- redirect workbookInstance
- }
- '*' { respond workbookInstance, [status: OK] }
- }*/
- }
- @Transactional
- def delete(Workbook workbookInstance) {
- if (workbookInstance == null) {
- notFound()
- return
- }
- workbookInstance.delete flush: true
- request.withFormat {
- form multipartForm {
- flash.message = message(code: 'default.deleted.message', args: [message(code: 'Workbook.label', default: 'Workbook'), workbookInstance.id])
- redirect action: "list", method: "GET"
- }
- '*' { render status: NO_CONTENT }
- }
- }
- @Transactional
- def deleteDirect(Long id) {
- def workbookInstance = Workbook.get(id)
- delete(workbookInstance)
- }
- protected void notFound() {
- request.withFormat {
- form multipartForm {
- flash.message = message(code: 'default.not.found.message', args: [message(code: 'workbookInstance.label', default: 'Workbook'), params.id])
- redirect action: "index", method: "GET"
- }
- '*' { render status: NOT_FOUND }
- }
- }
- def addWorkPlace() {
- def workbookInstance = session.workbookInstance
- println 'workbook workbook workbook ' + workbookInstance
- DateFormat df = new SimpleDateFormat("dd/MM/yyyy")
- def company = params.company
- def position = params.position
- Date startDate = df.parse(params?.startDate as String)
- Date endDate = params?.endDate ? df.parse(params?.endDate as String) : null
- def workPlace = new WorkPlace()
- println 'ddddddddddddddddddddddddd ' + workbookInstance.workPlaces
- workPlace.setWorkPlaceNmb(workbookInstance.workPlaces.size() + 1)
- workPlace.setCompany(company)
- workPlace.setPosition(position)
- workPlace.setWorkStartDate(startDate)
- workPlace.setWorkEndDate(endDate)
- workbookInstance.addToWorkPlaces(workPlace)
- session.workbookInstance = workbookInstance
- render(template: '/utils/workPlaceRow', model: [workPlace: workPlace, isDocumentEditable: true])
- }
- def deleteWorkPlace() {
- def workbookInstance = session.workbookInstance
- println 'Number of workplaces ' + workbookInstance.workPlaces.size()
- def wpNumber = Integer.parseInt(params.wpNumber)
- println 'wpNumber wpNumber ' + wpNumber
- workbookInstance.workPlaces.remove(wpNumber - 1)
- println 'Number of workplaces ' + workbookInstance.workPlaces.size()
- for (def workPlace : workbookInstance.workPlaces) {
- if (workPlace.workPlaceNmb > wpNumber) {
- --workPlace.workPlaceNmb
- }
- }
- for (def workPlace : workbookInstance.workPlaces) {
- println workPlace
- }
- session.workbookInstance = workbookInstance
- render(template: '/utils/workPlacesList', model: [workPlacesToRender: workbookInstance.workPlaces, isDocumentEditable: true])
- }
- def loadWorkbooksData() {
- def result = workbooksSearchService.getResults(params)
- println 'aaaaaaaaaaaaaaaa ' + result.iTotalRecords
- def builder = new JsonBuilder()
- def root = builder {
- "sEcho" params.sEcho
- "iTotalRecords" result.iTotalRecords
- "iTotalDisplayRecords" result.iTotalDisplayRecords
- data result.domainsToDisplay.collect { Workbook wb ->
- [
- "0": wb.firstName,
- "1": wb.lastName,
- "2": wb.passportNumber,
- "3": wb.country,
- "4": wb.dateOfBirth]
- }
- }
- render builder.toString()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement