diff --git a/app/controllers/ecloud_controller.rb b/app/controllers/ecloud_controller.rb index 3d025b15..5cc3d926 100644 --- a/app/controllers/ecloud_controller.rb +++ b/app/controllers/ecloud_controller.rb @@ -3,6 +3,11 @@ require 'net/http' class EcloudController < ApplicationController skip_before_filter :verify_authenticity_token + before_filter :user_setup + before_filter :require_login, only: [:authorize] + + + skip_before_filter :verify_authenticity_token, only: [:ps_new, :ps_edit] def index @@ -25,18 +30,28 @@ class EcloudController < ApplicationController end # 企业开通 + # ecordercode 唯一标志一个企业的订购关系 def bs_new + begin + Ecloud.create!(applyno: params['applyno'], ecordercode: params['ecordercode'], opttype: params['opttype'], trial: params['trial'], + bossorderid: params['bossorderid'], custid: params['custid'], custcode: params['custcode']) + render :json => {result: true, errmsg: ""} + rescue Exception => e + logger.error(e.message) + render :json => {code: 500, msg: "#{e.message}"} + end end # 企业更新 def bs_update - + end # 用户业务开通接口 def ps_new begin + logger.info("11111######params") ecloud_user = EcloudUser.where(:custid => params['custid'], :user_id => params['users']['userid']).first if ecloud_user.present? render :json => {code: 501, msg: "你已开通过该业务"} diff --git a/app/models/ecloud.rb b/app/models/ecloud.rb index dc14eddc..a089b6fd 100644 --- a/app/models/ecloud.rb +++ b/app/models/ecloud.rb @@ -1,5 +1,5 @@ class Ecloud < ActiveRecord::Base attr_accessible :applyno, :begintime, :bossorderid, :custcode, :custid, :custname, :custtype, :ecordercode, :endtime, :mobile, :opttype, :productcode, :registersource, :string, :trial, :useralias, :userid, :username - has_many :ecloud_users, destroy: :dependence - has_many :ecloud_services, destroy: :dependence + has_many :ecloud_users + has_many :ecloud_services end diff --git a/config/routes.rb b/config/routes.rb index e94cb41d..525290a5 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -35,6 +35,9 @@ RedmineApp::Application.routes.draw do ## oauth相关 match 'ecloud/ecloud_login_callback', to: 'ecloud#ecloud_login_callback', :via => :get match 'ecloud/bs_new', to: 'ecloud#bs_new', :via => :post + match 'ecloud/bs_edit', to: 'ecloud#bs_edit', :via => :post + match 'ecloud/ps_new', to: 'ecloud#ps_new', :via => :post + match 'ecloud/ps_edit', to: 'ecloud#ps_edit', :via => :post resources :ec_course_evaluations do diff --git a/db/migrate/20190312060516_add_index_to_ecloud.rb b/db/migrate/20190312060516_add_index_to_ecloud.rb new file mode 100644 index 00000000..1a5db7c3 --- /dev/null +++ b/db/migrate/20190312060516_add_index_to_ecloud.rb @@ -0,0 +1,5 @@ +class AddIndexToEcloud < ActiveRecord::Migration + def change + add_index :eclouds, [:ecordercode, :custcode], :unique => true, :name => 'ecorder_cust_code' + end +end