diff --git a/api/version1/customerform/calendarData.go b/api/version1/customerform/calendarData.go index 3550086..84a3cd6 100644 --- a/api/version1/customerform/calendarData.go +++ b/api/version1/customerform/calendarData.go @@ -166,7 +166,7 @@ func (c *CalendarList) HaveEveryDayData(day TimeAryInfo, formInfo modelAppPlatfo fmt.Printf("语句6===》%v\n", whySql) gormDb = gormDb.Where(whySql) } - + myPower := publicmethod.GetMyFormPower(userCont.Key, formInfo.Groupid, formInfo.SignCode) //Step 2 权限处理 var powerSearch publicmethod.GainUserPower powerSearch.SystemName = "appsystem" //系统名称 @@ -175,7 +175,7 @@ func (c *CalendarList) HaveEveryDayData(day TimeAryInfo, formInfo modelAppPlatfo powerSearch.PostId = userCont.Position //岗位 powerSearch.AppKey = formInfo.Groupid //归属哪个App powerSearch.TableId = formInfo.CfId //归属哪个表格 - gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource) + gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource, myPower) var formList []map[string]interface{} err := gormDb.Order("`id` DESC").Find(&formList).Error diff --git a/api/version1/customerform/formTableView.go b/api/version1/customerform/formTableView.go index 1f234a5..0671c83 100644 --- a/api/version1/customerform/formTableView.go +++ b/api/version1/customerform/formTableView.go @@ -49,12 +49,12 @@ func (a *ApiMethod) MultiViewPAge(c *gin.Context) { var userCont modelshr.ManCont userCont.GetLoginCont(context) //当前操作人 var formInfo modelAppPlatform.CustomerFormView - err := formInfo.GetCont(map[string]interface{}{"`cfid`": requestData.FormId, "`status`": 1}, "`tablekey`", "`table_structure`", "`mastesform`", "`mastesformjson`", "`listjson`", "`flowIsOpen`", "`flowkey`", "`listJsonInfo`") + err := formInfo.GetCont(map[string]interface{}{"`cfid`": requestData.FormId, "`status`": 1}, "`tablekey`", "`table_structure`", "`mastesform`", "`mastesformjson`", "`listjson`", "`flowIsOpen`", "`flowkey`", "`listJsonInfo`", "`signCode`") if err != nil { publicmethod.Result(1, err, c, "未知表单!无法获取字段!") return } - + myPower := publicmethod.GetMyFormPower(userCont.Key, formInfo.Groupid, formInfo.SignCode) //解析表单列表数据结构 var formJsonCont CustomerFormMaster json.Unmarshal([]byte(formInfo.MastesFormJson), &formJsonCont) @@ -77,7 +77,7 @@ func (a *ApiMethod) MultiViewPAge(c *gin.Context) { powerSearch.PostId = userCont.Position //岗位 powerSearch.AppKey = formInfo.Groupid //归属哪个App powerSearch.TableId = formInfo.CfId //归属哪个表格 - gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource) + gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource, myPower) var total int64 totalErr := gormDb.Count(&total).Error diff --git a/api/version1/customerform/tableList.go b/api/version1/customerform/tableList.go index 7dc40e1..c8b1390 100644 --- a/api/version1/customerform/tableList.go +++ b/api/version1/customerform/tableList.go @@ -56,12 +56,12 @@ func (a *ApiMethod) TableCusterField(c *gin.Context) { //获取表单数据 var formInfo modelAppPlatform.CustomerFormView - err = formInfo.GetCont(map[string]interface{}{"`cfid`": requestData.FormId, "`status`": 1}, "`tablekey`", "`table_structure`", "`mastesform`", "`mastesformjson`", "`listjson`", "`flowIsOpen`", "`flowkey`", "`groupid`", "`cfid`") + err = formInfo.GetCont(map[string]interface{}{"`cfid`": requestData.FormId, "`status`": 1}, "`tablekey`", "`table_structure`", "`mastesform`", "`mastesformjson`", "`listjson`", "`flowIsOpen`", "`flowkey`", "`groupid`", "`cfid`", "`signCode`") if err != nil { publicmethod.Result(1, err, c, "未知表单!无法获取字段!") return } - + myPower := publicmethod.GetMyFormPower(userCont.Key, formInfo.Groupid, formInfo.SignCode) //解析表单列表数据结构 var formJsonCont CustomerFormMaster json.Unmarshal([]byte(formInfo.MastesFormJson), &formJsonCont) @@ -100,7 +100,7 @@ func (a *ApiMethod) TableCusterField(c *gin.Context) { powerSearch.PostId = userCont.Position //岗位 powerSearch.AppKey = formInfo.Groupid //归属哪个App powerSearch.TableId = formInfo.CfId //归属哪个表格 - gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource) + gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource, myPower) //Step 4 获取一共有多少条数据 totalErr := gormDb.Count(&total).Error @@ -128,7 +128,7 @@ func (a *ApiMethod) TableCusterField(c *gin.Context) { powerSearch.PostId = userCont.Position //岗位 powerSearch.AppKey = formInfo.Groupid //归属哪个App powerSearch.TableId = formInfo.CfId //归属哪个表格 - gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource) + gormDb = powerSearch.MakeSearchSql(gormDb, userCont, formJsonCont.Form.DataSource, myPower) //Step 3 获取一共有多少条数据 totalErr := gormDb.Count(&total).Error diff --git a/api/version1/taskplatform/taskflowing/appTaskFlow.go b/api/version1/taskplatform/taskflowing/appTaskFlow.go index 60d24d1..92622fd 100644 --- a/api/version1/taskplatform/taskflowing/appTaskFlow.go +++ b/api/version1/taskplatform/taskflowing/appTaskFlow.go @@ -546,7 +546,7 @@ func (a *ApiMethod) SaveDraftAgain(c *gin.Context) { masterUnitList[v.Name] = v } sendInfo := publicmethod.MapOut[string]() - masrWriteMap := taskmanagement.MakeFormMapData(formCont.Flowkey, userCont.Key, userCont.AdminOrg, cureeTime, masterField, masterUnitList, 2) + masrWriteMap := taskmanagement.MakeFormMapData(formCont.Flowkey, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, masterField, masterUnitList, 2) if len(masrWriteMap) > 0 { oldMasterData, _ := taskmanagement.MasterTableHandle(formCont.TableKey, userCont.Key, cureeTime, masrWriteMap) sendInfo["oldMasterData"] = oldMasterData @@ -558,7 +558,7 @@ func (a *ApiMethod) SaveDraftAgain(c *gin.Context) { for _, v := range formUnitCont.SunFormInfo { sunTypeAry[v.TableName] = v.UbitInfo } - sunTableData := EditSunDatabase(formCont.Flowkey, userCont.Key, userCont.AdminOrg, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + sunTableData := EditSunDatabase(formCont.Flowkey, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) sendInfo["sunTableData"] = sunTableData if len(sunTableData) > 0 { sonList, _ := taskmanagement.SonTableHandle(taskId, userCont.Key, cureeTime, sunFieldAry) @@ -669,7 +669,7 @@ func (a *ApiMethod) AfreshAppSubmit(c *gin.Context) { masterUnitList[v.Name] = v } sendInfo := publicmethod.MapOut[string]() - masrWriteMap := taskmanagement.MakeFormMapData(formCont.Flowkey, userCont.Key, userCont.AdminOrg, cureeTime, masterField, masterUnitList, 2) + masrWriteMap := taskmanagement.MakeFormMapData(formCont.Flowkey, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, masterField, masterUnitList, 2) if len(masrWriteMap) > 0 { oldMasterData, _ := taskmanagement.MasterTableHandle(formCont.TableKey, userCont.Key, cureeTime, masrWriteMap) sendInfo["oldMasterData"] = oldMasterData @@ -681,7 +681,7 @@ func (a *ApiMethod) AfreshAppSubmit(c *gin.Context) { for _, v := range formUnitCont.SunFormInfo { sunTypeAry[v.TableName] = v.UbitInfo } - sunTableData := EditSunDatabase(formCont.Flowkey, userCont.Key, userCont.AdminOrg, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + sunTableData := EditSunDatabase(formCont.Flowkey, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) sendInfo["sunTableData"] = sunTableData if len(sunTableData) > 0 { sonList, _ := taskmanagement.SonTableHandle(taskId, userCont.Key, cureeTime, sunFieldAry) diff --git a/api/version1/taskplatform/taskmanagement/appControl.go b/api/version1/taskplatform/taskmanagement/appControl.go index 56cfa10..09bb812 100644 --- a/api/version1/taskplatform/taskmanagement/appControl.go +++ b/api/version1/taskplatform/taskmanagement/appControl.go @@ -102,7 +102,7 @@ func (a *ApiMethod) CreateAppTask(c *gin.Context) { masterUnitList[v.Name] = v } - masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, cureeTime, masterField, masterUnitList, 1) + masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, masterField, masterUnitList, 1) masrWriteMap["flowIsOpen"] = formCont.FlowIsOpen //任务列表 var taskCont customerForm.TaskRecord @@ -149,7 +149,7 @@ func (a *ApiMethod) CreateAppTask(c *gin.Context) { sunTypeAry[v.TableName] = v.UbitInfo } - err = WriteSunDatabaseSoucer(sqlDborm, uuid, userCont.Key, userCont.AdminOrg, cureeTime, formJsonCont.Form.DataSourceConfig.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + err = WriteSunDatabaseSoucer(sqlDborm, uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formJsonCont.Form.DataSourceConfig.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) } else { // //无子表 @@ -165,7 +165,7 @@ func (a *ApiMethod) CreateAppTask(c *gin.Context) { sunTypeAry[v.TableName] = v.UbitInfo } - err = WriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + err = WriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) } else { // //无子表 diff --git a/api/version1/taskplatform/taskmanagement/appform.go b/api/version1/taskplatform/taskmanagement/appform.go index b73b289..90f3ca3 100644 --- a/api/version1/taskplatform/taskmanagement/appform.go +++ b/api/version1/taskplatform/taskmanagement/appform.go @@ -513,7 +513,7 @@ func (a *ApiMethod) CustomerFormEditData(c *gin.Context) { masterUnitList[v.Name] = v } uuid, _ := strconv.ParseInt(mapData["formId"].(string), 10, 64) - masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, cureeTime, masterField, masterUnitList, 2) + masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, masterField, masterUnitList, 2) //判断是否 if len(sunFieldAry) > 0 { @@ -523,7 +523,7 @@ func (a *ApiMethod) CustomerFormEditData(c *gin.Context) { for _, v := range formUnitCont.SunFormInfo { sunTypeAry[v.TableName] = v.UbitInfo } - err = EditWriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + err = EditWriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) } else { err = overall.CONSTANT_DB_CustomerForm.Table(formCont.TableKey).Where("`masters_key` = ?", uuid).Updates(masrWriteMap).Error @@ -1017,7 +1017,7 @@ func CustomerFormCallBackVal(val map[string]interface{}, valClass map[string]cus # */ -func EditWriteSunDatabase(uuid, creater, createrOrgId, createrTime int64, masterTableName string, masterDataCont, sunDataList map[string]interface{}, sunTable map[string]map[string]customerform.MasterStruct) (err error) { +func EditWriteSunDatabase(uuid, creater, createrOrgId, createrPositon, createrTime int64, masterTableName string, masterDataCont, sunDataList map[string]interface{}, sunTable map[string]map[string]customerform.MasterStruct) (err error) { if len(masterDataCont) > 0 { if len(sunDataList) > 0 { sunMasterMap := publicmethod.MapOut[string]() @@ -1035,7 +1035,7 @@ func EditWriteSunDatabase(uuid, creater, createrOrgId, createrTime int64, master for _, sv := range s { //拆分子表 if sdf, isOk := sv.(map[string]interface{}); isOk { if sunTableType, sunIsOk := sunTable[k]; sunIsOk { - masterWriteVal := MakeFormMapData(uuid, creater, createrOrgId, createrTime, sdf, sunTableType, 2) //转换数据表值 + masterWriteVal := MakeFormMapData(uuid, creater, createrOrgId, createrPositon, createrTime, sdf, sunTableType, 2) //转换数据表值 if len(masterWriteVal) > 0 { sunCont = append(sunCont, masterWriteVal) } @@ -1214,7 +1214,7 @@ func (a *ApiMethod) NewCustomerFormEditData(c *gin.Context) { masterUnitList[v.Name] = v } uuid, _ := strconv.ParseInt(mapData["flowKey"].(string), 10, 64) - masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, cureeTime, masterField, masterUnitList, 2) + masrWriteMap := MakeFormMapData(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, masterField, masterUnitList, 2) //判断是否 if len(sunFieldAry) > 0 { @@ -1224,7 +1224,7 @@ func (a *ApiMethod) NewCustomerFormEditData(c *gin.Context) { for _, v := range formUnitCont.SunFormInfo { sunTypeAry[v.TableName] = v.UbitInfo } - err = EditWriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) + err = EditWriteSunDatabase(uuid, userCont.Key, userCont.AdminOrg, userCont.Position, cureeTime, formCont.TableKey, masrWriteMap, sunFieldAry, sunTypeAry) } else { err = overall.CONSTANT_DB_CustomerForm.Table(formCont.TableKey).Where("`masters_key` = ?", uuid).Updates(masrWriteMap).Error diff --git a/overall/publicmethod/getUserPower.go b/overall/publicmethod/getUserPower.go index e989cb1..7ab7a01 100644 --- a/overall/publicmethod/getUserPower.go +++ b/overall/publicmethod/getUserPower.go @@ -222,38 +222,38 @@ func (g *GainUserPower) GetUserPower() (powerInfo SendUserPower) { # */ func (g *GainUserPower) MakeSearchSql(gormDb *gorm.DB, userCont modelshr.ManCont, isOdeb string, appFormPower AppMyPowerTable) *gorm.DB { - powerInfo := g.GetUserPower() - // js, _ := json.Marshal(powerInfo) - fmt.Printf("\n\n\n等级-----%v--- ---->%v\n\n\n", isOdeb, powerInfo) - if isOdeb == "yes" { - switch powerInfo.AppSystem.Level { - case 2, 3, 4, 5: - if len(powerInfo.AppSystem.OrgList) > 0 { - gormDb = gormDb.Where("`createrOrg` IN ?", powerInfo.AppSystem.OrgList) - } else { - gormDb = gormDb.Where("`creater` = ?", userCont.Key) - } - case 6: - - default: - gormDb = gormDb.Where("`creater` = ?", userCont.Key) - } - } else { - switch powerInfo.AppSystem.Level { - case 2, 3, 4, 5: - if len(powerInfo.AppSystem.OrgList) > 0 { - gormDb = gormDb.Where("f.`createrOrg` IN ?", powerInfo.AppSystem.OrgList) - } else { - gormDb = gormDb.Where("f.`creater` = ?", userCont.Key) - } - fmt.Printf("语句7===》%v\n", powerInfo.AppSystem) - case 6: - fmt.Printf("语句8===》%v\n", powerInfo.AppSystem) - default: - fmt.Printf("语句9===》%v\n", powerInfo.AppSystem) - // gormDb = gormDb.Where("f.`creater` = ?", userCont.Key) - } - } + // powerInfo := g.GetUserPower() + // // js, _ := json.Marshal(powerInfo) + // fmt.Printf("\n\n\n等级-----%v--- ---->%v\n\n\n", isOdeb, powerInfo) + // if isOdeb == "yes" { + // switch powerInfo.AppSystem.Level { + // case 2, 3, 4, 5: + // if len(powerInfo.AppSystem.OrgList) > 0 { + // gormDb = gormDb.Where("`createrOrg` IN ?", powerInfo.AppSystem.OrgList) + // } else { + // gormDb = gormDb.Where("`creater` = ?", userCont.Key) + // } + // case 6: + + // default: + // gormDb = gormDb.Where("`creater` = ?", userCont.Key) + // } + // } else { + // switch powerInfo.AppSystem.Level { + // case 2, 3, 4, 5: + // if len(powerInfo.AppSystem.OrgList) > 0 { + // gormDb = gormDb.Where("f.`createrOrg` IN ?", powerInfo.AppSystem.OrgList) + // } else { + // gormDb = gormDb.Where("f.`creater` = ?", userCont.Key) + // } + // fmt.Printf("语句7===》%v\n", powerInfo.AppSystem) + // case 6: + // fmt.Printf("语句8===》%v\n", powerInfo.AppSystem) + // default: + // fmt.Printf("语句9===》%v\n", powerInfo.AppSystem) + // // gormDb = gormDb.Where("f.`creater` = ?", userCont.Key) + // } + // } //确定可以看到数据的边界 //1:本人;2:本岗位;3:本部门;4:本分部;5:指定行政组织;6:所有 @@ -275,7 +275,7 @@ func (g *GainUserPower) MakeSearchSql(gormDb *gorm.DB, userCont modelshr.ManCont case 6: default: } - gormDb = gormDb.Where("f.`creater` = ?", userCont.Key) + gormDb = gormDb.Or("f.`creater` = ?", userCont.Key) return gormDb }