diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..00f488d Binary files /dev/null and b/.DS_Store differ diff --git a/app/.DS_Store b/app/.DS_Store new file mode 100644 index 0000000..2cd2877 Binary files /dev/null and b/app/.DS_Store differ diff --git a/app/controller/work/repair.go b/app/controller/work/repair.go index 0895a4d..bcbad26 100644 --- a/app/controller/work/repair.go +++ b/app/controller/work/repair.go @@ -25,7 +25,8 @@ type ( // RepairDetailInfo 详细信息 RepairDetailInfo struct { *RepairInfo - Details []*model2.WorkRepairDetail `json:"details"` + //Details []*model2.WorkRepairDetail `json:"details"` + Work *InstanceDetailInfo `json:"work"` } ) @@ -64,26 +65,58 @@ func (c *Repair) List(orderNo, equipmentCode, equipmentTitle string, page, pageS // Detail 详细信息 func (c *Repair) Detail(id uint64) (*RepairDetailInfo, error) { - repair, err := model.NewWorkRepair().Detail(id) if err != nil { return nil, err } - details := make([]*model2.WorkRepairDetail, 0) + work := new(InstanceDetailInfo) - if err = model2.Find(model.NewWorkRepairDetail().WorkRepairDetail, &details, &model2.ModelWhereOrder{ - Where: model2.NewWhere("repair_id", id), - Order: model2.NewOrder("id", model2.OrderModeToAsc), - }); err != nil { + mWorkInstance := model.NewWorkInstance() + // 基本信息 + if work.WorkInstanceInfo, err = mWorkInstance.Detail(repair.WorkID); err != nil { return nil, err } + mWorkInstance.SetID(work.WorkInstanceInfo.ID) + work.CommonIDString = basic.CommonIDString{ + ID: mWorkInstance.GetEncodeID(), + } + work.EquipmentID = (&model2.Model{ID: work.WorkInstanceInfo.EquipmentID}).GetEncodeID() + work.ScheduleID = (&model2.Model{ID: work.WorkInstanceInfo.ScheduleID}).GetEncodeID() + // 位置信息 + mWorkInstance.Distribution = work.WorkInstanceInfo.Distribution + + work.Distribution = mWorkInstance.GetDistributionAttribute() + // 内修才有数据 + if work.WorkInstanceInfo.Kind == model2.WorkInstanceKindForWithin { + // 器材信息 + materials := make([]*model.WorkMaterialInfo, 0) + + if materials, err = model.NewWorkMaterial().Materials(id); err != nil { + return nil, err + } + // 采购信息 + purchases := make([]*model.WorkPurchaseInfo, 0) + + if purchases, err = model.NewWorkPurchase().Purchases(id); err != nil { + return nil, err + } + work.Within = struct { + Material []*model.WorkMaterialInfo `json:"material"` + Purchase []*model.WorkPurchaseInfo `json:"purchase"` + }{Material: materials, Purchase: purchases} + } else if work.WorkInstanceInfo.Kind == model2.WorkInstanceKindForOutside { + work.Outside = struct { + SupplierName string `json:"supplier_name"` + }{SupplierName: work.WorkInstanceInfo.SupplierName} + } return &RepairDetailInfo{ RepairInfo: &RepairInfo{ CommonIDString: basic.CommonIDString{ID: repair.GetEncodeID()}, WorkRepairInfo: repair, }, - Details: details, + Work: work, + //Details: details, }, nil } diff --git a/build_window.sh b/build_window.sh index b47da4d..20362d4 100755 --- a/build_window.sh +++ b/build_window.sh @@ -2,4 +2,4 @@ set -e #CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o ArmedPolice.exe main.go -CGO_ENABLED=1 GOOS=windows GOARCH=amd64 go build -x -v -ldflags "-s -w" -o ArmedPolice.exe main.go \ No newline at end of file +CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -x -v -ldflags "-s -w" -o ArmedPolice.exe main.go \ No newline at end of file diff --git a/config.yaml b/config.yaml index eaa7b9f..dea09f6 100644 --- a/config.yaml +++ b/config.yaml @@ -30,7 +30,6 @@ engine: complex: false # MYSQL 配置 mysql: - # host: 47.96.31.6 host: 192.168.0.188 # host: 127.0.0.1 port: 3306 diff --git a/router/router.go b/router/router.go index a9babd1..910df8c 100644 --- a/router/router.go +++ b/router/router.go @@ -134,7 +134,7 @@ func (this *Router) registerAPI() { _api := new(api.Role) roleV1.GET("/list", _api.List) roleV1.POST("/add", _api.Add) - roleV1.POST("/menu", _api.Edit) + roleV1.POST("/edit", _api.Edit) roleV1.POST("/delete", _api.Delete) roleV1.POST("/menus", _api.Menu) roleV1.POST("/menu/bind", _api.MenuBind)