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

PlugIns编程

开发平台:

Java

  1.      import java.text.SimpleDateFormat
  2.      import java.sql.Connection;
  3.      import java.sql.PreparedStatement;
  4.      import java.sql.ResultSet;
  5.      import java.sql.SQLException;
  6. import java.util.ArrayList;
  7. import java.util.HashMap;
  8. import java.util.List;
  9. import java.util.Map;
  10. class CustomerController {
  11.     def dataSource
  12.     
  13.     def index = { redirect(action:list,params:params) }
  14.     // the delete, save and update actions only accept POST requests
  15.     def allowedMethods = [delete:'POST', save:'POST', update:'POST']
  16.     def list = {
  17.         //JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource)
  18.         //def list = jdbcTemplate.queryForList("select * from customer")
  19.         //println "list=${list}"
  20.        def conn = dataSource.getConnection();
  21.         PreparedStatement ps = conn.prepareStatement("select * from customer");
  22.         ResultSet rs = ps.executeQuery();
  23.         while (rs.next()) {
  24. println rs.getString("cus_name")
  25. }
  26.        
  27.         
  28.          def df  =   new SimpleDateFormat('yyyy-MM-dd')
  29.         if(!params.max) params.max = '10'
  30.         if(!params.sort)params.sort = 'id'
  31.         if(!params.offset)params.offset = '0'
  32.         if(!params.order)params.order = 'asc'
  33.         if(!params._cusName)params._cusName = ''
  34.         String  cusProfessionSql = ""
  35.         String  cusTypeSql = ""
  36.         if(params._cusProfession_id)cusProfessionSql = " and str(c.cusProfession.id) = '${params._cusProfession_id}' "
  37.         if(params._cusType_id)cusTypeSql = " and str(c.cusType.id) = '${params._cusType_id}' "
  38.         java.util.Date _cusLastchangefrom =null
  39.         java.util.Date _cusLastchangeto  =null
  40.         if(!params._cusLastchangefrom){
  41.             _cusLastchangefrom = df.parse('1970-01-01')
  42.         }else{_cusLastchangefrom = df.parse(params._cusLastchangefrom)}
  43.         if(!params._cusLastchangeto){
  44.             _cusLastchangeto = new Date()
  45.         }else{_cusLastchangeto = df.parse(params._cusLastchangeto)}
  46.         if(!params._cusDel)params._cusDel = null
  47.         def _cusDelState = '0'
  48.         if(params._cusDel == 'on'){
  49.                _cusDelState = ''
  50.         } else if(params._cusDel == null || params._cusDel == ""){ _cusDelState = '0'   }
  51.         def  results=null
  52.         results = Customer.findAll("""from Customer c where c.cusName like :_cusName ${cusProfessionSql+cusTypeSql} and  c.cusLastchange between :_cusLastchangefrom and :_cusLastchangeto and c.cusDel like :_cusDelState order by ${params.sort} ${params.order} """,
  53.                 [_cusName:'%'+params._cusName+'%',_cusLastchangefrom:_cusLastchangefrom,_cusLastchangeto:_cusLastchangeto,_cusDelState:'%'+_cusDelState+'%'],[max:Integer.parseInt(params.max),offset:Integer.parseInt(params.offset)])
  54.         params.count=Customer.findAll("""from Customer c where c.cusName like :_cusName ${cusProfessionSql+cusTypeSql} and c.cusLastchange between :_cusLastchangefrom and :_cusLastchangeto and c.cusDel like :_cusDelState order by ${params.sort} ${params.order} """,
  55.                 [_cusName:'%'+params._cusName+'%',_cusLastchangefrom:_cusLastchangefrom,_cusLastchangeto:_cusLastchangeto,_cusDelState:'%'+_cusDelState+'%']).size()
  56.         render(view:'list',model:[customerList:results])
  57.     }
  58.     def show = {
  59.         def customer = Customer.get( params.id )
  60.         if(!customer) {
  61.             flash.message = "customer.not.found"
  62.             flash.args = [params.id]
  63.             flash.defaultMessage = "Customer not found with id ${params.id}"
  64.             redirect(action:list,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  65.         }
  66.         else { return [ customer : customer ] }
  67.     }
  68.     def delete = {
  69.         def customer = Customer.get( params.id )
  70.         if(customer) {
  71.             //customer.delete()
  72.         //�趨ɾ��״̬   �����˸���ʱ��
  73.             customer.cusDel   =   '1'
  74.             customer.cusLastchanger    =   'session'
  75.             customer.cusLastchange =   new Date()
  76.             customer.save()
  77.             flash.message = "customer.deleted"
  78.             flash.args = [params.id]
  79.             flash.defaultMessage = "Customer ${params.id} deleted"
  80.             redirect(action:list,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  81.         }
  82.         else {
  83.             flash.message = "customer.not.found"
  84.             flash.args = [params.id]
  85.             flash.defaultMessage = "Customer not found with id ${params.id}"
  86.             redirect(action:list,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  87.         }
  88.     }
  89.     def edit = {
  90.         def customer = Customer.get( params.id )
  91.         if(!customer) {
  92.             flash.message = "customer.not.found"
  93.             flash.args = [params.id]
  94.             flash.defaultMessage = "Customer not found with id ${params.id}"
  95.             redirect(action:list,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  96.         }
  97.         else {
  98.             return [ customer : customer ]
  99.         }
  100.     }
  101.     def update = {
  102.         def customer = Customer.get( params.id )
  103.         if(customer) {
  104.             customer.properties = params
  105.         //�趨ɾ��״̬ �����˸���ʱ��
  106.         //customer.cusDel    =   '0'
  107.         customer.cusLastchanger    =   'session'
  108.         customer.cusLastchange =   new Date()
  109.             if(!customer.hasErrors() && customer.save()) {
  110.                 flash.message = "customer.updated"
  111.                 flash.args = [params.id]
  112.                 flash.defaultMessage = "Customer ${params.id} updated"
  113.                 redirect(action:show,id:customer.id,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  114.             }
  115.             else {
  116.                 render(view:'edit',model:[customer:customer])
  117.             }
  118.         }
  119.         else {
  120.             flash.message = "customer.not.found"
  121.             flash.args = [params.id]
  122.             flash.defaultMessage = "Customer not found with id ${params.id}"
  123.             redirect(action:edit,id:params.id,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  124.         }
  125.     }
  126.     def create = {
  127.         def customer = new Customer()
  128.         //customer.properties = params
  129.         return ['customer':customer]
  130.     }
  131.     def save = {
  132.         String  cusid=Customer.executeQuery("select max(c.cusId) from Customer c ")[0]
  133.         println cusid
  134.         if(cusid=="null"||cusid==null){
  135.             cusid = 'CUS100000000'
  136.         }else { cusid='CUS'+(Integer.parseInt(cusid.substring(3,12))+1)}
  137.         def customer = new Customer(params)
  138.         customer.cusId =   cusid    //���ñ��
  139.         //�趨ɾ��״̬ �����˴���ʱ�� �����˸���ʱ��
  140.         customer.cusDel    =   '0'
  141.         customer.cusCreater    =   'session'
  142.         customer.cusCreatetime =   new Date()
  143.         customer.cusLastchanger    =   'session'
  144.         customer.cusLastchange =   new Date()
  145.         
  146.         if(!customer.hasErrors() && customer.save()) {
  147.             flash.message = "customer.created"
  148.             flash.args = ["${customer.id}"]
  149.             flash.defaultMessage = "Customer ${customer.id} created"
  150.             redirect(action:show,id:customer.id,params:[_cusName:params._cusName,_cusProfession_id:params._cusProfession_id,_cusType_id:params._cusType_id,_cusLastchangefrom:params._cusLastchangefrom,_cusLastchangeto:params._cusLastchangeto,_cusDel:params._cusDel,max:params.max,sort:params.sort,offset:params.offset,order:params.order])
  151.         }
  152.         else {
  153.             render(view:'create',model:[customer:customer])
  154.         }
  155.     }
  156. }