QuotationController.groovy
上传用户:steveyhw
上传日期:2019-05-13
资源大小:307k
文件大小:8k
源码类别:

PlugIns编程

开发平台:

Java

  1.      import java.text.SimpleDateFormat            
  2. class QuotationController {
  3.     
  4.     def index = { redirect(action:list,params:params) }
  5.     // the delete, save and update actions only accept POST requests
  6.     def allowedMethods = [delete:'POST', save:'POST', update:'POST']
  7.     def list = {
  8.         def df  =   new SimpleDateFormat('yyyy-MM-dd')
  9.         if(!params.max) params.max = '2'
  10.         if(!params.sort)params.sort = 'id'
  11.         if(!params.offset)params.offset = '0'
  12.         if(!params.order)params.order = 'asc'
  13.         //if(!params._quoBase)params._quoBase = '0.0'
  14.         if(!params._quoName)params._quoName = ''
  15.         if(!params._quoFactory)params._quoFactory = ''
  16.        String  quoTypeSql = ""
  17.        if(params._quoType_id)quoTypeSql = " and str(q.quoType) = '${params._quoType_id}' "
  18.         java.util.Date _quoLastchangefrom =null
  19.         java.util.Date _quoLastchangeto  =null
  20.         if(!params._quoLastchangefrom){
  21.             _quoLastchangefrom = df.parse('1970-01-01')
  22.         }else{_quoLastchangefrom = df.parse(params._quoLastchangefrom)}
  23.         if(!params._quoLastchangeto){
  24.             _quoLastchangeto = new Date()
  25.         }else{_quoLastchangeto = df.parse(params._quoLastchangeto)}
  26.         if(!params._quoDel)params._quoDel = null
  27.         println '_quoDel :'+params._quoDel
  28.         def _quoDelState = '0'
  29.             if(params._quoDel == 'on'){
  30.                _quoDelState = ''
  31.         } else if(params._quoDel == null){ _quoDelState = '0'   }
  32.         println '_quoDelState :'+_quoDelState
  33.         println params
  34.         def  results=null
  35.         println 'between '+_quoLastchangefrom+' and '+_quoLastchangeto
  36.                 //
  37.        println 'sql:'+quoTypeSql
  38.         results = Quotation.findAll("from Quotation q where str(q.quoName) like :_quoName and q.quoFactory like :_quoFactory ${quoTypeSql} and q.quoLastchange between :_quoLastchangefrom and :_quoLastchangeto and q.quoDel like :_quoDelState order by ${params.sort} ${params.order} ",
  39.                 [_quoName:'%'+params._quoName+'%',_quoFactory:'%'+params._quoFactory+'%',_quoLastchangefrom:_quoLastchangefrom,_quoLastchangeto:_quoLastchangeto,_quoDelState:'%'+_quoDelState+'%'],[max:Integer.parseInt(params.max),offset:Integer.parseInt(params.offset)])
  40.         params.count=Quotation.findAll("from Quotation q where str(q.quoName) like :_quoName and q.quoFactory like :_quoFactory ${quoTypeSql} and q.quoLastchange between :_quoLastchangefrom and :_quoLastchangeto and q.quoDel like :_quoDelState order by ${params.sort} ${params.order} ",
  41.                 [_quoName:'%'+params._quoName+'%',_quoFactory:'%'+params._quoFactory+'%',_quoLastchangefrom:_quoLastchangefrom,_quoLastchangeto:_quoLastchangeto,_quoDelState:'%'+_quoDelState+'%']).size()
  42.         println 'params._quoDel '+params._quoDel
  43.         render(view:'list',model:[quotationList:results])
  44.     }
  45.     def show = {
  46.         def quotation = Quotation.get( params.id )
  47.         if(!quotation) {
  48.             flash.message = "quotation.not.found"
  49.             flash.args = [params.id]
  50.             flash.defaultMessage = "Quotation not found with id ${params.id}"
  51.             redirect(action:list,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  52.         }
  53.         else { return [ quotation : quotation ] }
  54.     }
  55.     def delete = {
  56.         def quotation = Quotation.get( params.id )
  57.         if(quotation) {
  58.             //quotation.delete()
  59.             //设定删除状态  创建/更新时间 或人
  60.             quotation.quoDel   =   '1'
  61.             quotation.quoLastchange = new Date()
  62.             quotation.quoLastchanger = 'session'
  63.             quotation.save()
  64.             flash.message = "quotation.deleted"
  65.             flash.args = [params.id]
  66.             flash.defaultMessage = "Quotation ${params.id} deleted"
  67.             redirect(action:list,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  68.         }
  69.         else {
  70.             flash.message = "quotation.not.found"
  71.             flash.args = [params.id]
  72.             flash.defaultMessage = "Quotation not found with id ${params.id}"
  73.             redirect(action:list,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  74.         }
  75.     }
  76.     def edit = {
  77.         def quotation = Quotation.get( params.id )
  78.         if(!quotation) {
  79.             flash.message = "quotation.not.found"
  80.             flash.args = [params.id]
  81.             flash.defaultMessage = "Quotation not found with id ${params.id}"
  82.             redirect(action:list,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  83.         }
  84.         else {
  85.                     println ''+params
  86.             return [ quotation : quotation ]
  87.         }
  88.     }
  89.     def update = {
  90.         def quotation = Quotation.get( params.id )
  91.         if(quotation) {
  92.             quotation.properties = params
  93.         //设定删除状态 更新人更新时间
  94.         quotation.quoDel    =   '0'
  95.         quotation.quoLastchanger    =   'session'
  96.         quotation.quoLastchange =   new Date()
  97.             
  98.             if(!quotation.hasErrors() && quotation.save()) {
  99.                 flash.message = "quotation.updated"
  100.                 flash.args = [params.id]
  101.                 flash.defaultMessage = "Quotation ${params.id} updated"
  102.                 redirect(action:show,id:quotation.id,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  103.             }
  104.             else {
  105.                 render(view:'edit',model:[quotation:quotation])
  106.             }
  107.         }
  108.         else {
  109.             flash.message = "quotation.not.found"
  110.             flash.args = [params.id]
  111.             flash.defaultMessage = "Quotation not found with id ${params.id}"
  112.             redirect(action:edit,id:params.id,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  113.         }
  114.     }
  115.     def create = {
  116.         def quotation = new Quotation()
  117.         quotation.properties = params
  118.         return ['quotation':quotation]
  119.     }
  120.     def save = {
  121.         String  quoid=Quotation.executeQuery("select max(q.quoId) from Quotation q ")[0]
  122.         println quoid
  123.         if(quoid=="null"||quoid==null){
  124.             quoid = 'QUO100000000'
  125.         }else { quoid='QUO'+(Integer.parseInt(quoid.substring(3,12))+1)}
  126.              
  127.         def quotation = new Quotation(params)
  128.         quotation.quoId =   quoid    //设置编号
  129.         //设定删除状态 创建人创建时间 更新人更新时间
  130.         quotation.quoDel    =   '0'
  131.         quotation.quoCreater    =   'session'
  132.         quotation.quoCreatetime =   new Date()
  133.         quotation.quoLastchanger    =   'session'
  134.         quotation.quoLastchange =   new Date()
  135.         if(!quotation.hasErrors() && quotation.save()) {
  136.             flash.message = "quotation.created"
  137.             flash.args = ["${quotation.id}"]
  138.             flash.defaultMessage = "Quotation ${quotation.id} created"
  139.             redirect(action:show,id:quotation.id,params:[_quoName:params._quoName,_quoFactory:params._quoFactory,_quoType_id:params._quoType_id,_quoLastchangefrom:params._quoLastchangefrom,_quoLastchangeto:params._quoLastchangeto,_quoDel:params._quoDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  140.         }
  141.         else {
  142.             render(view:'create',model:[quotation:quotation])
  143.         }
  144.     }
  145. }