|
|
@@ -182,8 +182,49 @@ func (c *DetailController) BatchAdd(r *ghttp.Request) {
|
|
|
if err != nil {
|
|
|
response.Json(r, -1, err.Error())
|
|
|
}
|
|
|
- detail := new(detail.ListEntity)
|
|
|
- if err := r.Parse(detail); err != nil {
|
|
|
+
|
|
|
+ detail := new(detail.ListEntity)
|
|
|
+ if err := r.Parse(detail); err != nil {
|
|
|
+ // 数据验证错误
|
|
|
+ if v, ok := err.(*gvalid.Error); ok {
|
|
|
+ response.Json(r, 1, v.FirstString())
|
|
|
+ r.ExitAll()
|
|
|
+ }
|
|
|
+ // 其他错误
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
+ r.ExitAll()
|
|
|
+ }
|
|
|
+ if id, err := service.Adds(detail); err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ } else {
|
|
|
+ response.Json(r, 0, "ok", id)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+// 批量保存 先删除再新增
|
|
|
+func (c *DetailController) Saves(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ // 初始化service
|
|
|
+ service, err := detailService.NewDetailService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ }
|
|
|
+ delUpdReq := new(common.DeleteUpdReq)
|
|
|
+ // 获取操作人
|
|
|
+ realName := r.GetParamVar("realname").String()
|
|
|
+ delUpdReq.UpdatedBy = realName
|
|
|
+ DutyId := r.GetInt("DutyId")
|
|
|
+ if DutyId == 0 {
|
|
|
+ response.Json(r, 1, "父级id不能为空")
|
|
|
+ }
|
|
|
+ // 先删除
|
|
|
+ if err := service.DeleteByDutyId(DutyId, delUpdReq); err != nil {
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
+ }
|
|
|
+ // 新增
|
|
|
+ detail := new(detail.ListEntity)
|
|
|
+ if err := r.Parse(detail); err != nil {
|
|
|
// 数据验证错误
|
|
|
if v, ok := err.(*gvalid.Error); ok {
|
|
|
response.Json(r, 1, v.FirstString())
|
|
|
@@ -193,7 +234,7 @@ func (c *DetailController) BatchAdd(r *ghttp.Request) {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
r.ExitAll()
|
|
|
}
|
|
|
- if id, err := service.Adds(detail); err != nil {
|
|
|
+ if id, err := service.Adds(detail); err != nil {
|
|
|
response.Json(r, -1, err.Error())
|
|
|
} else {
|
|
|
response.Json(r, 0, "ok", id)
|