|
|
@@ -0,0 +1,715 @@
|
|
|
+package system
|
|
|
+
|
|
|
+import (
|
|
|
+ "encoding/json"
|
|
|
+ "fmt"
|
|
|
+ "strings"
|
|
|
+ "time"
|
|
|
+
|
|
|
+ "dashoo.cn/backend/api/business/coustominformation"
|
|
|
+ "dashoo.cn/backend/api/business/orders"
|
|
|
+ "dashoo.cn/backend/api/business/organize"
|
|
|
+ . "dashoo.cn/backend/api/controllers"
|
|
|
+ "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()
|
|
|
+}
|