package sysorg

import (
	"wechat-conf/controllers"
	"wechat-conf/models/model"
	"wechat-conf/service/sysorg"
)

// SysorgController 信息
type SysorgController struct {
	dao *sysorg.SysorgServ
	controllers.BaseController
}

// Constructor 初始化 Controller
// @Title Constructor
// @Description 初始化 Controller, 系统自动调用
func (c *SysorgController) Constructor() {
	c.dao = sysorg.NewSysorgServ(c.Context)
}
func (c *SysorgController) GetOrgList() {
	page, _ := c.GetInt("page")
	pageSize, _ := c.GetInt("pagesize")
	list, err := c.dao.GetOrgList(page, pageSize)
	if err != nil {
		c.ResponseError(err)
	}
	c.ResponseJSON(list)
}

func (c *SysorgController) AddOrg() {
	org := model.SysOrg{}
	if err := c.ParseForm(&org); err != nil {
		c.ResponseError(err)
	}
	newOrg, err := c.dao.AddOrg(org)
	if err != nil {
		c.ResponseError(err)
	}
	c.ResponseJSON(newOrg)
}

func (c *SysorgController) AuthOrg() {
	org := model.SysOrg{}
	if err := c.ParseForm(&org); err != nil {
		c.ResponseError(err)
	}
	err := c.dao.AuthOrg(org)
	if err != nil {
		c.ResponseError(err)
	}
	c.ResponseJSON("授权成功")
}

func (c *SysorgController) DeleteOrg() {
	orgId := c.GetString(":orgId")
	err := c.dao.DeleteOrg(orgId)
	if err != nil {
		c.ResponseError(err)
	}
	c.ResponseJSON("删除成功")

}

// OrgBindWechat 项目绑定微信
func (c *SysorgController) OrgBindWechat() {
	orgid := c.GetString(":orgid")
	confid := c.GetString(":confid")

	err := c.dao.BindWechat(orgid, confid)
	if err != nil {
		c.ResponseError(err)
	}
	c.ResponseJSON("绑定成功!")
}