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

PlugIns编程

开发平台:

Java

  1.     import java.text.SimpleDateFormat              
  2. class SalaryController {
  3.     
  4.     def index = { redirect(action:list,params:params) }
  5.     // the delete, save and update actions only accept POST requests
  6.     def allowedMethods = [list:['GET','POST'],delete:'POST', save:'POST', update:'POST',create:'GET']
  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._salBase)params._salBase = '0.0'
  14.         if(!params._salMan)params._salMan = ''
  15.         java.util.Date _salLastchangefrom =null
  16.         java.util.Date _salLastchangeto  =null
  17.         if(!params._salLastchangefrom){
  18.             _salLastchangefrom = df.parse('1970-01-01')
  19.         }else{_salLastchangefrom = df.parse(params._salLastchangefrom)}
  20.         if(!params._salLastchangeto){
  21.             _salLastchangeto = new Date()
  22.         }else{_salLastchangeto = df.parse(params._salLastchangeto)}
  23.         if(!params._salDel)params._salDel = null
  24.         println '_salDel :'+params._salDel
  25.         def _salDelState = '0'
  26.             if(params._salDel == 'on'){
  27.                _salDelState = ''
  28.         } else if(params._salDel == null){ _salDelState = '0'   }
  29.         println '_salDelState :'+_salDelState
  30.         println params
  31.         def  results=null
  32.         println 'between '+_salLastchangefrom+' and '+_salLastchangeto
  33.                 //
  34.        if(!params._salType_id){
  35.         results = Salary.findAll("from Salary s where s.salMan.staName like :_salMan and s.salBase >= :_salBase and s.salLastchange between :_salLastchangefrom and :_salLastchangeto and s.salDel like :_salDelState order by ${params.sort} ${params.order} ",
  36.                 [_salMan:'%'+params._salMan+'%',_salBase:Double.parseDouble(params._salBase),_salLastchangefrom:_salLastchangefrom,_salLastchangeto:_salLastchangeto,_salDelState:'%'+_salDelState+'%'],[max:Integer.parseInt(params.max),offset:Integer.parseInt(params.offset)])
  37.         params.count=Salary.findAll("from Salary s where s.salMan.staName like :_salMan and s.salBase >= :_salBase and s.salLastchange between :_salLastchangefrom and :_salLastchangeto and s.salDel like :_salDelState order by ${params.sort} ${params.order} ",
  38.                 [_salMan:'%'+params._salMan+'%',_salBase:Double.parseDouble(params._salBase),_salLastchangefrom:_salLastchangefrom,_salLastchangeto:_salLastchangeto,_salDelState:'%'+_salDelState+'%']).size()
  39.         }else {
  40.            println 'have type ' + params._salType_id instanceof String
  41.         results = Staff.findAll("from Salary s where s.salMan.staName like :_salMan and s.salBase >= :_salBase and str(s.salMan.staType.id)=:_salType_id and s.salLastchange between :_salLastchangefrom and :_salLastchangeto and s.salDel like :_salDelState order by ${params.sort} ${params.order}",
  42.                 [_salMan:'%'+params._salMan+'%',_salBase:Double.parseDouble(params._salBase),_salType_id:params._salType_id,_salLastchangefrom:_salLastchangefrom,_salLastchangeto:_salLastchangeto,_salDelState:'%'+_salDelState+'%'],[max:Integer.parseInt(params.max),offset:Integer.parseInt(params.offset)])
  43.         params.count=Staff.findAll("from Salary s where s.salMan.staName like :_salMan and s.salBase >= :_salBase and str(s.salMan.staType.id)=:_salType_id and s.salLastchange between :_salLastchangefrom and :_salLastchangeto and s.salDel like :_salDelState order by ${params.sort} ${params.order}",
  44.                 [_salMan:'%'+params._salMan+'%',_salBase:Double.parseDouble(params._salBase),_salType_id:params._salType_id,_salLastchangefrom:_salLastchangefrom,_salLastchangeto:_salLastchangeto,_salDelState:'%'+_salDelState+'%']).size()
  45.         }
  46.         println 'params._salDel '+params._salDel
  47.         render(view:'list',model:[salaryList:results])
  48.         //[ salaryList: Salary.list( params ) ]
  49.     }
  50.     def show = {
  51.           def salary = Salary.get( params.id )
  52.         if(!salary) {
  53.             flash.message = "salary.not.found"
  54.             flash.args = [params.id]
  55.             flash.defaultMessage = "Salary not found with id ${params.id}"
  56.             redirect(action:list,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  57.         }
  58.         else {
  59.             render(view:'show',model:[ salary : salary])
  60.             //return [ salary : salary ]
  61.         }
  62.     }
  63.     def delete = {
  64.         def salary = Salary.get( params.id )
  65.         if(salary) {
  66.             //设定删除状态  创建/更新时间 或人
  67.             salary.salDel   =   '1'
  68.             salary.salLastchange = new Date()
  69.             salary.salLastchanger = 'session'
  70.             salary.save()//salary.delete()
  71.             flash.message = "salary.deleted"
  72.             flash.args = [params.id]
  73.             flash.defaultMessage = "Salary ${params.id} deleted"
  74.             println 'delete is ' +  params
  75.             redirect(action:list,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  76.         }
  77.         else {
  78.             flash.message = "salary.not.found"
  79.             flash.args = [params.id]
  80.             flash.defaultMessage = "Salary not found with id ${params.id}"
  81.             redirect(action:list,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  82.         }
  83.     }
  84.     def edit = {
  85.         def salary = Salary.get( params.id )
  86.         if(!salary) {
  87.             flash.message = "salary.not.found"
  88.             flash.args = [params.id]
  89.             flash.defaultMessage = "Salary not found with id ${params.id}"
  90.             redirect(action:list,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  91.         }
  92.         else {
  93.             println  'edit '+params._salDel
  94.             render(view:'edit',model:[ salary : salary])
  95.             //return [ salary : salary ]
  96.         }
  97.     }
  98.     def update = {
  99.         def salary = Salary.get( params.id )
  100.         if(salary) {
  101.             println 'salMan.id '+ params.salMan.id
  102.             salary.properties = params
  103.         salary.salMan = Staff.findById(params.salMan.id)
  104.         //设定发薪时间
  105.         salary.salTime  =   new Date()            
  106.         //设定删除状态  创建/更新时间 或人
  107.         salary.salDel = '0'
  108.         salary.salLastchange = new Date()
  109.         salary.salLastchanger = 'session'
  110.             if(!salary.hasErrors() && salary.save()) {
  111.                 flash.message = "salary.updated"
  112.                 flash.args = [params.id]
  113.                 flash.defaultMessage = "Salary ${params.id} updated"
  114.                 redirect(action:show,id:salary.id,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  115.             }
  116.             else {
  117.                 render(view:'edit',model:[salary:salary])
  118.             }
  119.         }
  120.         else {
  121.             flash.message = "salary.not.found"
  122.             flash.args = [params.id]
  123.             flash.defaultMessage = "Salary not found with id ${params.id}"
  124.             redirect(action:edit,id:params.id,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDe,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  125.         }
  126.     }
  127.     def create = {
  128.         def salary = new Salary()
  129.         //salary.properties = params
  130.         salary.salBase = 0.0
  131.         render(view:'create',model:[salary:salary])
  132.         //return ['salary':salary]
  133.     }
  134.     def save = {
  135.         def salary = new Salary()
  136.         salary.properties = params
  137.         salary.salMan = Staff.findById(params.salMan.id)
  138.         //设定发薪时间
  139.         salary.salTime  =   new Date()
  140.         //设定删除状态  创建/更新时间 或人
  141.         salary.salDel = '0'
  142.         salary.salCreatetime = new Date()
  143.         salary.salCreater   =   'session'
  144.         salary.salLastchange = new Date()
  145.         salary.salLastchanger = 'session'
  146.         if(!salary.hasErrors() && salary.save()) {
  147.             flash.message = "salary.created"
  148.             flash.args = ["${salary.id}"]
  149.             flash.defaultMessage = "Salary ${salary.id} created"
  150.             redirect(action:show,id:salary.id,params:[_salMan:params._salMan,_salBase:params._salBase,_salType_id:params._salType_id,_salLastchangefrom:params._salLastchangefrom,_salLastchangeto:params._salLastchangeto,_salDel:params._salDe,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  151.         }
  152.         else {
  153.             render(view:'create',model:[salary:salary])
  154.         }
  155.     }
  156. }