Ver código fonte

lims router for permission and orderadd

yuedefeng 6 anos atrás
pai
commit
fb48def344

+ 715 - 0
src/dashoo.cn/backend/api/controllers/lims/orderadd.go

@@ -0,0 +1,715 @@
+package lims
+
+import (
+	"encoding/json"
+	"fmt"
+	"strings"
+	"time"
+
+	. "dashoo.cn/backend/api/controllers"
+	"dashoo.cn/backend/api/business/coustominformation"
+	"dashoo.cn/backend/api/business/orders"
+	"dashoo.cn/backend/api/business/organize"
+	"dashoo.cn/utils"
+)
+
+// Operations about Users
+type OrderaddController struct {
+	BaseController
+}
+
+type Orderadd struct {
+	//客户信息
+	IdCard        string `json:"IdCard"`
+	Name          string `json:"Name"`
+	Sex           string `json:"Sex"`
+	Age           string `json:"Age"`
+	Telephone     string `json:"Telephone"`
+	Email         string `json:"Email"`
+	HomeAddress   string `json:"HomeAddress"`
+	RightDisease  string `json:"RightDisease"`
+	FamilyDisease string `json:"FamilyDisease"`
+
+	//订单信息
+	OrderTypeName     string    `json:"OrderTypeName"`
+	OrderType         int       `json:"OrderType"`
+	OrderNum          int64     `json:"OrderNum"`
+	OrderData         time.Time `json:"OrderData"`
+	OrderPrice        string    `json:"OrderPrice"`
+	OrderSales        string    `json:"OrderSales"`
+	Hospital          string    `json:"Hospital"`
+	Department        string    `json:"department"`
+	AdmissonNumbe     string    `json:"AdmissonNumbe"`
+	Disblood          string    `json:"Disblood"`
+	Entity            string    `json:"Entity"`
+	ClinicalDiagnosis string    `json:"ClinicalDiagnosis"`
+	State             string    `json:"State"`
+	TState            int       `json:"TState"`
+
+	//制备信息
+	CellType    string `json:"CellType"`
+	BackNum     string `json:"BackNum"`
+	Volume      string `json:"Volume"`
+	AnotherFrom string `json:"AnotherFrom"`
+	AnotherInfo string `json:"AnotherInfo"`
+	//细胞存储信息
+	SelfCell    string `json:"SelfCell"`
+	AdiposeCell string `json:"AdiposeCell"`
+	SampleFrom  string `json:"SampleFrom"`
+	//基因信息
+	SusceptibleGene string    `json:"Susceptiblegene"`
+	CtDNA           string    `json:"CtDNA"`
+	CancerDetaction string    `json:"Cancerdetaction"`
+	GatherTime      time.Time `json:"GatherTime"`
+	OutlibTime      time.Time `json:"OutlibTime"`
+}
+
+// @Title 新增细胞订单
+// @Description
+// @Success    200    {object} controllers.Request
+// @router / [post]
+func (this *OrderaddController) AddUser() {
+	var model Orderadd
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	var errinfo ErrorInfo
+	var cellpd orders.CellProduct
+	var custominfo coustominformation.Coustom_Information
+	var ordinfo orders.Order_Information
+	utils.AutoMap(&custominfo, &model)
+	utils.AutoMap(&ordinfo, &model)
+	utils.AutoMap(&cellpd, &model)
+
+	svc := orders.GetCellproductService(utils.DBE)
+	svb := coustominformation.GetCoustominfomationService(utils.DBE)
+	sva := orders.GetOrderinfoService(utils.DBE)
+	_, err1 := svc.InsertEntityBytbl(this.User.AccCode+CellProductName, &cellpd)
+	_, err2 := svb.InsertEntityBytbl(this.User.AccCode+Coustom_InformationName, &custominfo)
+	_, err3 := sva.InsertEntityBytbl(this.User.AccCode+Order_InformationName, &ordinfo)
+	if err1 == nil && err2 == nil && err3 == nil {
+		errinfo.Message = "新增细胞产品订单成功"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	} else {
+		errinfo.Message = "添加失败!" + utils.AlertProcess(err1.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+}
+
+// @Title get订单信息
+// @Description get user by token
+// @Success 200 {object} models.Userblood
+// @router /orderviewlist [get]
+func (this *OrderaddController) Orderviewlist() {
+	page := this.GetPageInfoForm()
+	where := "1 = 1 "
+	OrderType := this.GetString("ordertype")
+	TState := this.GetString("TState")
+	State := this.GetString("State")
+	if OrderType != "" {
+		where = where + " and OrderType = " + OrderType
+	}
+	if TState != "" {
+		where = where + " and TState = " + TState
+	}
+	if State != "" {
+		where = where + " and State = " + State
+	}
+	svc := orders.GetOrderinfoService(utils.DBE)
+	total, list := svc.GetPagingOrderviewlist(page.CurrentPage, page.Size, "Id desc", where, this.User.AccCode)
+	//根据组织ID查询父级并输出
+	svv := organize.GetOrganizeService(utils.DBE)
+	var i int
+	var listtotal int
+	var length int
+	length = len(list)
+	if length < int(page.Size) {
+		listtotal = length
+	} else {
+		listtotal = int(page.Size)
+	}
+	for i = 0; i < listtotal; i++ {
+		var hoapital = ""
+		model := svv.GetAllParentByTopAccCode(list[i].Hospital, this.User.AccCode)
+		arr := strings.Split(model, ",")
+		for j := len(arr) - 4; j >= 0; j-- {
+			if j == 0 {
+				where := " Id= " + arr[j]
+				entity := svv.QueryEntity(where)
+				hoapital += entity.Fullname
+			} else {
+				where := " Id= " + arr[j]
+				entity := svv.QueryEntity(where)
+				hoapital += entity.Fullname + "/"
+			}
+		}
+		list[i].Hospital = hoapital
+	}
+	var datainfo DataInfo
+	datainfo.Items = list
+	datainfo.CurrentItemCount = total
+	datainfo.PageIndex = page.CurrentPage
+	datainfo.ItemsPerPage = page.Size
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title get订单查询
+// @Success 200 {object} controllers.Request
+// @router /ordersearch [get]
+func (this *OrderaddController) Ordersearch() {
+	page := this.GetPageInfoForm()
+	where := "a.Id != 0 "
+	Name := this.GetString("Name")
+	if Name != "" {
+		where = where + "and a.Name like '%" + Name + "%' "
+	}
+	Hospital := this.GetString("Hospital")
+	if Hospital != "" {
+		where = where + "and a.Hospital like '%" + Hospital + "%' "
+	}
+	OrderNum := this.GetString("OrderNum")
+	if OrderNum != "" {
+		where = where + "and a.OrderNum like '%" + OrderNum + "%' "
+	}
+	Disblood := this.GetString("Disblood")
+	if Disblood != "" {
+		where = where + "and a.Disblood like '%" + Disblood + "%' "
+	}
+	CreateOnstart, _ := this.GetInt64("StartData")
+	if CreateOnstart != 0 {
+		fmt.Println("x--", CreateOnstart)
+		where = where + "and a.OrderData >'" + time.Unix(CreateOnstart/1000, 0).Format("2006-01-02") + "'"
+	}
+	CreateOnend, _ := this.GetInt64("EndData")
+	if CreateOnend != 0 {
+		fmt.Println("x--", CreateOnend)
+		where = where + "and a.OrderData <'" + time.Unix(CreateOnend/1000, 0).Format("2006-01-02") + " 23:59:59'"
+	}
+	svc := orders.GetOrderinfoService(utils.DBE)
+	var list []orders.Order_Information
+	total, list := svc.GetinfoWithOrderSearch(page.CurrentPage, page.Size, "Id desc", where, this.User.AccCode)
+	svv := organize.GetOrganizeService(utils.DBE)
+	var i int64
+	for i = 0; i < total; i++ {
+		var hoapital = ""
+		model := svv.GetAllParentByTopAccCode(list[i].Hospital, this.User.AccCode)
+		arr := strings.Split(model, ",")
+		for j := len(arr) - 4; j >= 0; j-- {
+			if j == 0 {
+				where := " Id= " + arr[j]
+				entity := svv.QueryEntity(where)
+				hoapital += entity.Fullname
+			} else {
+				where := " Id= " + arr[j]
+				entity := svv.QueryEntity(where)
+				hoapital += entity.Fullname + "/"
+			}
+		}
+		list[i].Hospital = hoapital
+	}
+	var datainfo DataInfo
+	datainfo.Items = list
+	datainfo.CurrentItemCount = total
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 修改订单状态
+// @Description
+// @Param	OrderNum	path	string	true
+// @Success	200	{object} controllers.Request
+// @router /changeordetstate/:id [put]
+func (this *OrderaddController) ChangeOrdetState() {
+	OrderNum := this.Ctx.Input.Param(":id")
+	var errinfo ErrorInfo
+	var model Orderadd
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	svc := orders.GetOrderinfoService(utils.DBE)
+	flag := svc.UpdateOrderStata(OrderNum, "State", this.User.AccCode)
+	if flag == 1 {
+		errinfo.Message = "审核成功"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "审核失败!"
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
+}
+
+// @Description get user by token
+// @Success 200 {object} models.Userblood
+// @router /delete/:Id [delete]
+func (this *OrderaddController) Orderdelete() {
+	id := this.Ctx.Input.Param(":Id")
+	OrderNum := this.GetString("OrderNum")
+	num := OrderNum
+	var errinfo ErrorInfo
+	var entity orders.Order_Information
+	var entityempty orders.Order_Information
+	opdesc := "删除订单"
+	tabledesc := "申请单模块"
+	svc := orders.GetOrderinfoService(utils.DBE)
+	flag := svc.DeleteOrderInfo(num, this.User.AccCode)
+	err := svc.DeleteOperationAndWriteLogBytbl(this.User.AccCode+Order_InformationName, BaseOperationLogName, id, &entity, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, tabledesc)
+	if err == nil && flag == 1 {
+		errinfo.Message = "删除成功"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
+}
+
+// @Title get
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /ordersed/:OrderNum [get]
+func (this *OrderaddController) Ordersed() {
+	svc := orders.GetOrderinfoService(utils.DBE)
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var entity orders.Order_Information
+	where := " OrderNum=" + OrderNum + ""
+	entity = svc.QueryOrderEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 客户样本详细信息 根据ORDNUM查找get
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /coustom/:OrderNum [get]
+func (this *OrderaddController) Coustom() {
+	svc := coustominformation.GetCoustominfomationService(utils.DBE)
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var entity coustominformation.Coustom_Information
+	where := " OrderNum=" + OrderNum + ""
+	entity = svc.QueryCoustominfomationEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 获取订单号
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /getOrderNum [get]
+func (this *OrderaddController) GetOrderNum() {
+	entity := GetRandomOrderNum()
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 客户样本详细信息 根据身份证号查找
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /searchByIdCard [get]
+func (this *OrderaddController) FindCoustomByIdCard() {
+	svc := coustominformation.GetCoustominfomationService(utils.DBE)
+	IdCard := this.GetString("idcard")
+	var entity coustominformation.Coustom_Information
+	where := " IdCard=" + IdCard + ""
+	entity = svc.QueryCoustominfomationEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 细胞治疗详细信息
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /cellproducted/:OrderNum [get]
+func (this *OrderaddController) Cellproducted() {
+	svc := orders.GetCellproductService(utils.DBE)
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var entity orders.CellProduct
+	where := " OrderNum=" + OrderNum + ""
+	entity = svc.QueryCellpoductEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 细胞储存详细信息
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /cellsave/:OrderNum [get]
+func (this *OrderaddController) Cellsave() {
+	svc := orders.GetCellsaveinfoService(utils.DBE)
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var entity orders.CellSave
+	where := " OrderNum=" + OrderNum + ""
+	entity = svc.QueryCellsaveEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 基因治疗详细信息
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /geneproduct/:OrderNum [get]
+func (this *OrderaddController) Geneproduct() {
+	svc := orders.GetGeneproductService(utils.DBE)
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var entity orders.GeneProduct
+	where := " OrderNum=" + OrderNum + ""
+	entity = svc.QueryGeneproductEntity(where, this.User.AccCode)
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 编辑细胞制备样本
+// @Description 编辑存储样本
+// @Param	OrderNum	path	string	true		"需要修改的传感器编号"
+// @Param	body	body	business.device.DeviceChannels	"传感器信息"
+// @Success	200	{object} controllers.Request
+// @router /productedit/:OrderNum [put]
+func (this *OrderaddController) ProductEdit() {
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var errinfo ErrorInfo
+	if OrderNum == "" {
+		errinfo.Message = "操作失败!请求信息不完整"
+		errinfo.Code = -2
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+	var model orders.CellProduct
+	var model1 orders.Order_Information
+	var model2 coustominformation.Coustom_Information
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	json.Unmarshal(jsonblob, &model1)
+	json.Unmarshal(jsonblob, &model2)
+
+	var entityempty orders.CellProduct
+	var entityempty1 orders.Order_Information
+	var entityempty2 coustominformation.Coustom_Information
+
+	svc := orders.GetCellproductService(utils.DBE)
+	svb := orders.GetOrderinfoService(utils.DBE)
+	sva := coustominformation.GetCoustominfomationService(utils.DBE)
+
+	model.Id, _ = utils.StrTo(this.User.Id).Int()
+	opdesc := "编辑存储样本-" + utils.ToStr(model.OrderNum)
+	var cols []string = []string{"CellType", "BackNum", "Volume", "SampleFrom", "AnotherFrom", "AnotherInfo"}
+	err := svc.UpdateOperationAndWriteLogBytbl(this.User.AccCode+CellProductName, BaseOperationLogName, OrderNum, &model, &entityempty, cols, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+
+	var cols1 []string = []string{"OrderData", "Name", "OrderData", "OrderPrice", "OrderSales", "Hospital", "Department", "AdmissonNumbe", "Disblood", "Entity", "ClinicalDiagnosis"}
+	err1 := svb.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Order_InformationName, BaseOperationLogName, OrderNum, &model1, &entityempty1, cols1, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	var cols2 []string = []string{"IdCard", "Name", "Sex", "Age", "Telephone", "Email", "HomeAddress", "RightDisease", "Hospital", "FamilyDisease"}
+	err2 := sva.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Coustom_InformationName, BaseOperationLogName, OrderNum, &model2, &entityempty2, cols2, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	if err == nil && err1 == nil && err2 == nil {
+		errinfo.Message = "修改信息成功!"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
+}
+
+// @Title 编辑基因样本
+// @Description 编辑存储样本
+// @Param	OrderNum	path	string	true		"需要修改的传感器编号"
+// @Param	body	body	business.device.DeviceChannels	"传感器信息"
+// @Success	200	{object} controllers.Request
+// @router /geneedit/:OrderNum [put]
+func (this *OrderaddController) Geneedit() {
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var errinfo ErrorInfo
+	if OrderNum == "" {
+		errinfo.Message = "操作失败!请求信息不完整"
+		errinfo.Code = -2
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+	var model orders.GeneProduct
+	var model1 orders.Order_Information
+	var model2 coustominformation.Coustom_Information
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	json.Unmarshal(jsonblob, &model1)
+	json.Unmarshal(jsonblob, &model2)
+
+	var entityempty orders.GeneProduct
+	var entityempty1 orders.Order_Information
+	var entityempty2 coustominformation.Coustom_Information
+
+	svc := orders.GetGeneproductService(utils.DBE)
+	svb := orders.GetOrderinfoService(utils.DBE)
+	sva := coustominformation.GetCoustominfomationService(utils.DBE)
+
+	model.Id, _ = utils.StrTo(this.User.Id).Int()
+	opdesc := "编辑基因样本-" + utils.ToStr(model.OrderNum)
+	var cols []string = []string{"SusceptibleGene", "CtDNA", "CancerDetaction", "SampleFrom", "AnotherFrom", "AnotherInfo"}
+	err := svc.UpdateOperationAndWriteLogBytbl(this.User.AccCode+GeneProductName, BaseOperationLogName, OrderNum, &model, &entityempty, cols, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	var cols1 []string = []string{"OrderData", "Name", "OrderData", "OrderPrice", "OrderSales", "Hospital", "Department", "AdmissonNumbe", "Disblood", "Entity", "ClinicalDiagnosis"}
+	err1 := svb.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Order_InformationName, BaseOperationLogName, OrderNum, &model1, &entityempty1, cols1, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	var cols2 []string = []string{"IdCard", "Name", "Sex", "Age", "Telephone", "Email", "HomeAddress", "RightDisease", "FamilyDisease"}
+	err2 := sva.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Coustom_InformationName, BaseOperationLogName, OrderNum, &model2, &entityempty2, cols2, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	if err == nil && err1 == nil && err2 == nil {
+		errinfo.Message = "修改信息成功!"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
+}
+
+// @Title 编辑细胞存储样本
+// @Description 编辑存储样本
+// @Param	OrderNum	path	string	true		"需要修改的传感器编号"
+// @Param	body	body	business.device.DeviceChannels	"传感器信息"
+// @Success	200	{object} controllers.Request
+// @router /cellsaveedit/:OrderNum [put]
+func (this *OrderaddController) Cellsaveedit() {
+	OrderNum := this.Ctx.Input.Param(":OrderNum")
+	var errinfo ErrorInfo
+	if OrderNum == "" {
+		errinfo.Message = "操作失败!请求信息不完整"
+		errinfo.Code = -2
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+	var model orders.CellSave
+	var model1 orders.Order_Information
+	var model2 coustominformation.Coustom_Information
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	json.Unmarshal(jsonblob, &model1)
+	json.Unmarshal(jsonblob, &model2)
+
+	var entityempty orders.CellSave
+	var entityempty1 orders.Order_Information
+	var entityempty2 coustominformation.Coustom_Information
+
+	svc := orders.GetCellsaveinfoService(utils.DBE)
+	svb := orders.GetOrderinfoService(utils.DBE)
+	sva := coustominformation.GetCoustominfomationService(utils.DBE)
+
+	model.Id, _ = utils.StrTo(this.User.Id).Int()
+	opdesc := "编辑存储样本-" + utils.ToStr(model.OrderNum)
+	var cols []string = []string{"AdiposeCell", "SelfCell", "SampleFrom", "AnotherFrom", "AnotherInfo"}
+	err := svc.UpdateOperationAndWriteLogBytbl(this.User.AccCode+CellSaveName, BaseOperationLogName, OrderNum, &model, &entityempty, cols, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	var cols1 []string = []string{"OrderData", "Name", "OrderData", "OrderPrice", "OrderSales", "Hospital", "Department", "AdmissonNumbe", "Disblood", "Entity", "ClinicalDiagnosis"}
+	err1 := svb.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Order_InformationName, BaseOperationLogName, OrderNum, &model1, &entityempty1, cols1, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	var cols2 []string = []string{"IdCard", "Name", "Sex", "Age", "Telephone", "Email", "HomeAddress", "RightDisease", "FamilyDisease"}
+	err2 := sva.UpdateOperationAndWriteLogBytbl(this.User.AccCode+Coustom_InformationName, BaseOperationLogName, OrderNum, &model2, &entityempty2, cols2, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "订单模块")
+	if err == nil && err1 == nil && err2 == nil {
+		errinfo.Message = "修改信息成功!"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	} else {
+		errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+	}
+}
+
+// @Title 创建用户
+// @Description 创建用户
+// @Param	body	body	business.device.DeviceChannels	"传感器信息"
+// @Success	200	{object} controllers.Request
+// @router /cellsaved [post]
+func (this *OrderaddController) Cellsaved() {
+	var model Orderadd
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	var errinfo ErrorInfo
+
+	var cellsaveinfo orders.CellSave
+	var custominfo coustominformation.Coustom_Information
+	var ordinfo orders.Order_Information
+
+	custominfo.IdCard = model.IdCard
+	custominfo.Name = model.Name
+	custominfo.Sex = model.Sex
+	custominfo.Age = model.Age
+	custominfo.Telephone = model.Telephone
+	custominfo.Email = model.Email
+	custominfo.HomeAddress = model.HomeAddress
+	custominfo.RightDisease = model.RightDisease
+	custominfo.FamilyDisease = model.FamilyDisease
+	custominfo.Hospital = model.Hospital
+	custominfo.OrderNum = model.OrderNum
+
+	ordinfo.OrderData = model.OrderData
+	ordinfo.OrderPrice = model.OrderPrice
+	ordinfo.OrderSales = model.OrderSales
+	ordinfo.OrderNum = model.OrderNum
+	ordinfo.Hospital = model.Hospital
+	ordinfo.Department = model.Department
+	ordinfo.AdmissonNumbe = model.AdmissonNumbe
+	ordinfo.Disblood = model.Disblood
+	ordinfo.Entity = model.Entity
+	ordinfo.ClinicalDiagnosis = model.ClinicalDiagnosis
+	ordinfo.OrderType = model.OrderType
+	ordinfo.OrderTypeName = model.OrderTypeName
+	ordinfo.GatherTime = model.GatherTime
+	ordinfo.Name = model.Name
+	ordinfo.OrderType = model.OrderType
+	ordinfo.State = model.State
+
+	cellsaveinfo.AdiposeCell = model.AdiposeCell
+	cellsaveinfo.AnotherInfo = model.AnotherInfo
+	cellsaveinfo.SampleFrom = model.SampleFrom
+	cellsaveinfo.SelfCell = model.SelfCell
+	cellsaveinfo.AnotherFrom = model.AnotherFrom
+	cellsaveinfo.OrderNum = model.OrderNum
+
+	svc := orders.GetCellsaveinfoService(utils.DBE)
+	svb := coustominformation.GetCoustominfomationService(utils.DBE)
+	sva := orders.GetOrderinfoService(utils.DBE)
+	_, err1 := svc.InsertEntityBytbl(this.User.AccCode+CellSaveName, &cellsaveinfo)
+	_, err2 := svb.InsertEntityBytbl(this.User.AccCode+Coustom_InformationName, &custominfo)
+	_, err3 := sva.InsertEntityBytbl(this.User.AccCode+Order_InformationName, &ordinfo)
+	if err1 == nil && err2 == nil && err3 == nil {
+		errinfo.Message = "新增细胞存储订单成功"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	} else {
+		errinfo.Message = "添加失败!" + utils.AlertProcess(err1.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+
+}
+
+// @Title 获取细胞存储订单号
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /getOrderNumcell [get]
+func (this *OrderaddController) GetOrderNumcell() {
+	entity := GetRandomOrderNum()
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+//新增基因产品
+// @Title 创建用户
+// @Description 创建用户
+// @Param	body	body	business.device.DeviceChannels	"传感器信息"
+// @Success	200	{object} controllers.Request
+// @router /genelist [post]
+func (this *OrderaddController) Genelist() {
+	var model Orderadd
+	var jsonblob = this.Ctx.Input.RequestBody
+	json.Unmarshal(jsonblob, &model)
+	var errinfo ErrorInfo
+
+	var gene orders.GeneProduct
+	var custominfo coustominformation.Coustom_Information
+	var ordinfo orders.Order_Information
+
+	custominfo.IdCard = model.IdCard
+	custominfo.Name = model.Name
+	custominfo.Sex = model.Sex
+	custominfo.Age = model.Age
+	custominfo.Telephone = model.Telephone
+	custominfo.Email = model.Email
+	custominfo.HomeAddress = model.HomeAddress
+	custominfo.RightDisease = model.RightDisease
+	custominfo.FamilyDisease = model.FamilyDisease
+	custominfo.Hospital = model.Hospital
+	custominfo.OrderNum = model.OrderNum
+
+	ordinfo.Name = model.Name
+	ordinfo.OrderData = model.OrderData
+	ordinfo.OrderNum = model.OrderNum
+	ordinfo.OrderPrice = model.OrderPrice
+	ordinfo.OrderSales = model.OrderSales
+	ordinfo.Hospital = model.Hospital
+	ordinfo.Department = model.Department
+	ordinfo.AdmissonNumbe = model.AdmissonNumbe
+	ordinfo.Disblood = model.Disblood
+	ordinfo.Entity = model.Entity
+	ordinfo.ClinicalDiagnosis = model.ClinicalDiagnosis
+	ordinfo.OrderType = model.OrderType
+	ordinfo.OrderTypeName = model.OrderTypeName
+	ordinfo.GatherTime = model.GatherTime
+	ordinfo.OutlibTime = model.OutlibTime
+	ordinfo.State = model.State
+
+	gene.SusceptibleGene = model.SusceptibleGene
+	gene.CtDNA = model.CtDNA
+	gene.CancerDetaction = model.CancerDetaction
+	gene.SampleFrom = model.SampleFrom
+	gene.AnotherInfo = model.AnotherInfo
+	gene.AnotherFrom = model.AnotherFrom
+	gene.OrderNum = model.OrderNum
+
+	svc := orders.GetGeneproductService(utils.DBE)
+	svb := coustominformation.GetCoustominfomationService(utils.DBE)
+	sva := orders.GetOrderinfoService(utils.DBE)
+	_, err1 := svc.InsertEntityBytbl(this.User.AccCode+GeneProductName, &gene)
+	_, err2 := svb.InsertEntityBytbl(this.User.AccCode+Coustom_InformationName, &custominfo)
+	_, err3 := sva.InsertEntityBytbl(this.User.AccCode+Order_InformationName, &ordinfo)
+	if err1 == nil && err2 == nil && err3 == nil {
+		errinfo.Message = "新增基因产品订单成功"
+		errinfo.Code = 0
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	} else {
+		errinfo.Message = "添加失败!" + utils.AlertProcess(err1.Error())
+		errinfo.Code = -1
+		this.Data["json"] = &errinfo
+		this.ServeJSON()
+		return
+	}
+
+}
+
+// @Title 获取基因产品订单号
+// @Description get SampleType by token
+// @Success 200 {object} controllers.Request
+// @router /getOrderNumgene [get]
+func (this *OrderaddController) GetOrderNumgene() {
+	entity := GetRandomOrderNum()
+	var datainfo DataInfo
+	datainfo.Items = entity
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}

+ 25 - 0
src/dashoo.cn/backend/api/routers/router.go

@@ -398,6 +398,31 @@ func init() {
 				&lims.LimsCustomerpositionController{},
 			),
 		),
+		beego.NSNamespace("/orderadd",
+			beego.NSInclude(
+				&lims.OrderaddController{},
+			),
+		),
+		beego.NSNamespace("/users",
+			beego.NSInclude(
+				&casbin.UserController{},
+			),
+		),
+		beego.NSNamespace("/role",
+			beego.NSInclude(
+				&casbin.RoleController{},
+			),
+		),
+		beego.NSNamespace("/permissions",
+			beego.NSInclude(
+				&casbin.PermissionController{},
+			),
+		),
+		beego.NSNamespace("/organizes",
+			beego.NSInclude(
+				&casbin.OrganizesController{},
+			),
+		),
 	)
 	beego.AddNamespace(ns)
 }