2
3

annualaudit.go 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639
  1. package oilsupplier
  2. import (
  3. "dashoo.cn/backend/api/business/baseUser"
  4. "dashoo.cn/backend/api/business/oilsupplier/suppliercert"
  5. "dashoo.cn/backend/api/business/organize"
  6. "dashoo.cn/backend/api/business/paymentinfo"
  7. "dashoo.cn/business2/areajson"
  8. "dashoo.cn/business2/items"
  9. "dashoo.cn/business2/permission"
  10. "dashoo.cn/backend/api/business/auditsetting"
  11. "encoding/json"
  12. "fmt"
  13. "strconv"
  14. "strings"
  15. "time"
  16. "dashoo.cn/backend/api/business/oilsupplier/annualaudit"
  17. "dashoo.cn/backend/api/business/oilsupplier/supplier"
  18. "dashoo.cn/backend/api/business/workflow"
  19. "dashoo.cn/business2/userRole"
  20. . "dashoo.cn/backend/api/controllers"
  21. "dashoo.cn/utils"
  22. )
  23. type AnnualAuditController struct {
  24. BaseController
  25. }
  26. type ShenHeModel struct {
  27. AnnualId int
  28. SuccessStatus int
  29. AuditorRemark string
  30. }
  31. // @Title 获取列表
  32. // @Description get user by token
  33. // @Success 200 {object} []annualaudit.OilAnnualAudit
  34. // @router /list [get]
  35. func (this *AnnualAuditController) GetEntityList() {
  36. //获取分页信息
  37. page := this.GetPageInfoForm()
  38. where := " 1=1 "
  39. orderby := "Id"
  40. asc := false
  41. Order := this.GetString("Order")
  42. Prop := this.GetString("Prop")
  43. if Order != "" && Prop != "" {
  44. orderby = Prop
  45. if Order == "asc" {
  46. asc = true
  47. }
  48. }
  49. SupplierTypeName := this.GetString("SupplierTypeName")
  50. RecUnitId := this.GetString("RecUnitId")
  51. AccessCardNo := this.GetString("AccessCardNo")
  52. SupplierName := this.GetString("SupplierName")
  53. CreateOn := this.GetString("CreateOn")
  54. if SupplierTypeName != "" {
  55. where = where + " and SupplierTypeName like '%" + SupplierTypeName + "%'"
  56. }
  57. if RecUnitId != "" {
  58. where = where + " and RecUnitId like '%" + RecUnitId + "%'"
  59. }
  60. if AccessCardNo != "" {
  61. where = where + " and AccessCardNo like '%" + AccessCardNo + "%'"
  62. }
  63. if SupplierName != "" {
  64. where = where + " and SupplierName like '%" + SupplierName + "%'"
  65. }
  66. if CreateOn != "" {
  67. dates := strings.Split(CreateOn, ",")
  68. if len(dates) == 2 {
  69. minDate := dates[0]
  70. maxDate := dates[1]
  71. where = where + " and CreateOn>='" + minDate + "' and CreateOn<='" + maxDate + "'"
  72. }
  73. }
  74. //企业用户必须加创建人条件
  75. if this.User.IsCompanyUser == 1 {
  76. where = where + " and CreateUserId = '" + this.User.Id + "'"
  77. } else {
  78. //超级管理员和有查看所有数据权限的用户不加条件
  79. svcPerm := permission.GetPermissionService(utils.DBE)
  80. isauth := svcPerm.IsAuthorized(this.User.Id, "oil_supplier.marketAccess.AllRecord")
  81. if !svcPerm.IsAdmin(this.User.Id) && !isauth {
  82. where = where + " and CreateUserId = '" + this.User.Id + "'"
  83. }
  84. }
  85. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  86. var list []annualaudit.OilAnnualAudit
  87. total := svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, asc, &list, where)
  88. var datainfo DataInfo
  89. datainfo.Items = list
  90. datainfo.CurrentItemCount = total
  91. datainfo.PageIndex = page.CurrentPage
  92. datainfo.ItemsPerPage = page.Size
  93. this.Data["json"] = &datainfo
  94. this.ServeJSON()
  95. }
  96. // @Title 获取审批列表
  97. // @Description get user by token
  98. // @Success 200 {object} []annualaudit.OilAnnualAudit
  99. // @router /mytasks [get]
  100. func (this *AnnualAuditController) GetMyTaskEntityList() {
  101. //获取分页信息
  102. page := this.GetPageInfoForm()
  103. where := " 1=1 "
  104. orderby := "Id"
  105. asc := false
  106. Order := this.GetString("Order")
  107. Prop := this.GetString("Prop")
  108. if Order != "" && Prop != "" {
  109. orderby = Prop
  110. if Order == "asc" {
  111. asc = true
  112. }
  113. }
  114. SupplierTypeName := this.GetString("SupplierTypeName")
  115. RecUnitId := this.GetString("RecUnitId")
  116. AccessCardNo := this.GetString("AccessCardNo")
  117. SupplierName := this.GetString("SupplierName")
  118. CreateOn := this.GetString("CreateOn")
  119. if SupplierTypeName != "" {
  120. where = where + " and SupplierTypeName like '%" + SupplierTypeName + "%'"
  121. }
  122. if RecUnitId != "" {
  123. where = where + " and RecUnitId like '%" + RecUnitId + "%'"
  124. }
  125. if AccessCardNo != "" {
  126. where = where + " and AccessCardNo like '%" + AccessCardNo + "%'"
  127. }
  128. if SupplierName != "" {
  129. where = where + " and SupplierName like '%" + SupplierName + "%'"
  130. }
  131. if CreateOn != "" {
  132. dates := strings.Split(CreateOn, ",")
  133. if len(dates) == 2 {
  134. minDate := dates[0]
  135. maxDate := dates[1]
  136. where = where + " and CreateOn>='" + minDate + "' and CreateOn<='" + maxDate + "'"
  137. }
  138. }
  139. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  140. var list []annualaudit.OilAnnualAudit
  141. //找出待办任务
  142. actisvc := workflow.GetActivitiService(utils.DBE)
  143. certIdList := actisvc.GetMyTasks(workflow.OIL_AUDIT_APPLY, this.User.Id)
  144. where += " and Id in (" + certIdList + ")"
  145. //根据部门查询待办任务
  146. where += " and Status != 2 "
  147. total := svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, asc, &list, where)
  148. //total := svc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, page.CurrentPage, page.Size, orderby, asc, &list, where)
  149. var datainfo DataInfo
  150. datainfo.Items = list
  151. datainfo.CurrentItemCount = total
  152. datainfo.PageIndex = page.CurrentPage
  153. datainfo.ItemsPerPage = page.Size
  154. this.Data["json"] = &datainfo
  155. this.ServeJSON()
  156. }
  157. // @Title 获取年审企业名称
  158. // @Description 获取实体
  159. // @Success 200 {object} annualaudit.OilAnnualAudit
  160. // @router /supplierlist [get]
  161. func (this *AnnualAuditController) GetSupplierList() {
  162. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  163. var supplierlist []annualaudit.Suppliername
  164. supplierlist = svc.GetSupplierList(""+OilSupplierName, ""+OilAnnualAuditName)
  165. var datainfo DataInfo
  166. datainfo.Items = supplierlist
  167. this.Data["json"] = &datainfo
  168. this.ServeJSON()
  169. }
  170. // @Title 获取字典列表
  171. // @Description get user by token
  172. // @Success 200 {object} map[string]interface{}
  173. // @router /dictlist [get]
  174. func (this *AnnualAuditController) GetDictList() {
  175. dictList := make(map[string]interface{})
  176. dictSvc := items.GetItemsService(utils.DBE)
  177. userSvc := baseUser.GetBaseUserService(utils.DBE)
  178. areaJsonSvc := areajson.GetAreaJsonService(utils.DBE)
  179. //customerSvc := svccustomer.GetCustomerService(utils.DBE)
  180. dictList["UnitRelation"] = dictSvc.GetKeyValueItems("UnitRelation")
  181. dictList["CompanyType"] = dictSvc.GetKeyValueItems("CompanyType")
  182. var userEntity userRole.Base_User
  183. userSvc.GetEntityById(this.User.Id, &userEntity)
  184. dictList["Supervisers"] = userSvc.GetUserListByDepartmentId(this.User.AccCode, userEntity.Departmentid)
  185. dictList["GaodeMapChinaAreas"] = areaJsonSvc.GetGaodeMapChinaAreas()
  186. //获取我创建的所有公司
  187. var list []supplier.OilSupplier
  188. if this.User.IsCompanyUser == 1 {
  189. svcSupplier := supplier.GetOilSupplierService(utils.DBE)
  190. supplierWhere := " CreateUserId = '" + this.User.Id + "'"
  191. svcSupplier.GetEntitysByWhere(OilSupplierName, supplierWhere, &list)
  192. dictList["CompanyNames"] = list
  193. } else { //二级单位不用获取
  194. dictList["CompanyNames"] = list
  195. }
  196. // 部门
  197. orgsvc := organize.GetOrganizeService(utils.DBE)
  198. dictList["Organizes"] = orgsvc.GetCollectionDetailviewlist("'"+this.User.AccCode+"'")
  199. //获得有专业审核接收权限的人员
  200. var users1 []userRole.Base_RoleList
  201. var auditWorkflow1 auditsetting.Base_OilAuditSetting
  202. rsvc := auditsetting.GetOilAuditSettingService(utils.DBE)
  203. rsvc.GetAuditStepRoleEntity(OilAuditSettingName, "100000172", workflow.PROF_RECE, &auditWorkflow1)
  204. users1 = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow1.RoleId), "")
  205. dictList["Receive"] = users1
  206. //获得有专业审核权限的人员
  207. var users []userRole.Base_RoleList
  208. var auditWorkflow auditsetting.Base_OilAuditSetting
  209. rsvc.GetAuditStepRoleEntity(OilAuditSettingName, "100000172", workflow.PROF_AUDIT, &auditWorkflow)
  210. users = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow.RoleId), "")
  211. dictList["ProfAudit"] = users
  212. var datainfo DataInfo
  213. datainfo.Items = dictList
  214. this.Data["json"] = &datainfo
  215. this.ServeJSON()
  216. }
  217. // @Title 获取实体
  218. // @Description 获取实体
  219. // @Success 200 {object} annualaudit.OilAnnualAudit
  220. // @router /get/:id [get]
  221. func (this *AnnualAuditController) GetEntity() {
  222. Id := this.Ctx.Input.Param(":id")
  223. var model annualaudit.OilAnnualAudit
  224. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  225. svc.GetEntityByIdBytbl(""+OilAnnualAuditName, Id, &model)
  226. this.Data["json"] = &model
  227. this.ServeJSON()
  228. }
  229. // @Title 添加
  230. // @Description 新增
  231. // @Success 200 {object} controllers.Request
  232. // @router /add [post]
  233. func (this *AnnualAuditController) AddEntity() {
  234. var model annualaudit.OilAnnualAudit
  235. var errinfo ErrorDataInfo
  236. var jsonBlob = this.Ctx.Input.RequestBody
  237. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  238. firstAudit := this.GetString("firstAudit")
  239. json.Unmarshal(jsonBlob, &model)
  240. where := "SupplierId = " + utils.ToStr(model.SupplierId) + " and SupplierTypeName = " + model.SupplierTypeName
  241. var auditentity []annualaudit.OilAnnualAudit
  242. svc.GetEntitysByWhere(""+OilAnnualAuditName, where, &auditentity)
  243. if len(auditentity) == 1 {
  244. errinfo.Message = "已提交年审,请勿重复提交!"
  245. errinfo.Code = -1
  246. this.Data["json"] = &errinfo
  247. this.ServeJSON()
  248. return
  249. }
  250. supwhere := "a.Id = " + utils.ToStr(model.SupplierId) + " and b.SupplierTypeCode = " + model.SupplierTypeName
  251. supsvc := supplier.GetOilSupplierService(utils.DBE)
  252. var list []supplier.OilSupplierView
  253. total := supsvc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, 1, 1, "a.Id", true, &list, supwhere)
  254. if total == 0 {
  255. errinfo.Message = "请先提交准入申请再提交年审!"
  256. errinfo.Code = -1
  257. this.Data["json"] = &errinfo
  258. this.ServeJSON()
  259. return
  260. }
  261. var suppliermodel supplier.OilSupplierView
  262. suppliermodel = list[0]
  263. model.RecUnitId = suppliermodel.RecUnitId
  264. model.CerId, _ = strconv.Atoi(suppliermodel.CertId)
  265. model.Status = 0
  266. model.Step = 2
  267. model.BackReason = suppliermodel.BackReason
  268. model.CreateOn = time.Now()
  269. model.CreateBy = this.User.Realname
  270. model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
  271. //添加一条年审记录
  272. _, err := svc.InsertEntityBytbl(""+OilAnnualAuditName, &model)
  273. annualId := model.Id
  274. svcActiviti := workflow.GetActivitiService(utils.DBE)
  275. //启动工作流
  276. processInstanceId := svcActiviti.StartProcess(workflow.OIL_AUDIT_APPLY, utils.ToStr(annualId), this.User.Id)
  277. //获得有审核权限的人员
  278. //var users []userRole.Base_RoleList
  279. //var userIds string
  280. //var auditWorkflow auditsetting.Base_OilAuditSetting
  281. //rsvc := auditsetting.GetOilAuditSettingService(utils.DBE)
  282. //rsvc.GetAuditStepRoleEntity(OilAuditSettingName, firstAudit, workflow.FIRST_TRIAL, &auditWorkflow)
  283. //users = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow.RoleId), "")
  284. //for _, tmpUser := range users {
  285. // userIds += strconv.FormatInt(tmpUser.Id, 10) + ","
  286. //}
  287. //userIds = strings.Trim(userIds, ",")
  288. var ActiComplete workflow.ActiCompleteVM
  289. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  290. ActiComplete.BusinessKey = strconv.Itoa(annualId)
  291. ActiComplete.UserNames = firstAudit
  292. ActiComplete.UserId = this.User.Id
  293. ActiComplete.Result = "1"
  294. ActiComplete.Remarks = "提交给二级单位初审"
  295. ActiComplete.CallbackUrl = ""
  296. //提交给二级单位初审
  297. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  298. var auditmodel annualaudit.OilAnnualAudit
  299. auditmodel.WorkflowId = processInstanceId
  300. cols := []string{
  301. "Id",
  302. "WorkflowId",
  303. }
  304. if receiveVal == "true" {
  305. _, err = svc.UpdateEntityByIdCols(annualId, auditmodel, cols)
  306. if err == nil {
  307. //新增
  308. errinfo.Message = "添加成功!"
  309. errinfo.Code = 0
  310. errinfo.Item = model.Id
  311. this.Data["json"] = &errinfo
  312. this.ServeJSON()
  313. } else {
  314. errinfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
  315. errinfo.Code = -1
  316. this.Data["json"] = &errinfo
  317. this.ServeJSON()
  318. }
  319. } else {
  320. errinfo.Message = "工作流异常,请联系管理员!"
  321. errinfo.Code = -1
  322. this.Data["json"] = &errinfo
  323. this.ServeJSON()
  324. }
  325. }
  326. // @Title 删除单条信息
  327. // @Description
  328. // @Success 200 {object} ErrorInfo
  329. // @Failure 403 :id 为空
  330. // @router /delete/:Id [delete]
  331. func (this *AnnualAuditController) DeleteEntity() {
  332. Id := this.Ctx.Input.Param(":Id")
  333. var errinfo ErrorInfo
  334. if Id == "" {
  335. errinfo.Message = "操作失败!请求信息不完整"
  336. errinfo.Code = -2
  337. this.Data["json"] = &errinfo
  338. this.ServeJSON()
  339. return
  340. }
  341. var model annualaudit.OilAnnualAudit
  342. var entityempty annualaudit.OilAnnualAudit
  343. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  344. opdesc := "删除-" + Id
  345. err := svc.DeleteOperationAndWriteLogBytbl(""+OilAnnualAuditName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, "", "钻井日报")
  346. if err == nil {
  347. errinfo.Message = "删除成功"
  348. errinfo.Code = 0
  349. this.Data["json"] = &errinfo
  350. this.ServeJSON()
  351. } else {
  352. errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
  353. errinfo.Code = -1
  354. this.Data["json"] = &errinfo
  355. this.ServeJSON()
  356. }
  357. }
  358. // @Title 审核
  359. // @Description 审核
  360. // @Success 200 {object} controllers.Request
  361. // @router /auditcallback [get]
  362. func (this *AnnualAuditController) AuditCallback() {
  363. result := this.GetString("ret")
  364. bussinsid := this.GetString("busid")
  365. status := this.GetString("status")
  366. annualId := this.GetString("annualId")
  367. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  368. var entityempty annualaudit.OilAnnualAudit
  369. var err error
  370. var errinfo ErrorInfo
  371. var cols []string = []string{"Status"}
  372. entityempty.Status, _ = strconv.Atoi(status)
  373. err = svc.UpdateEntityBytbl(OilAnnualAuditName, annualId, &entityempty, cols)
  374. if err != nil {
  375. errinfo.Message = "审核错误!"
  376. errinfo.Code = -1
  377. this.Data["json"] = &errinfo
  378. this.ServeJSON()
  379. }
  380. fmt.Println(result, status, annualId, bussinsid)
  381. }
  382. // @Title 审核
  383. // @Description 审核
  384. // @Success 200 {object} controllers.Request
  385. // @router /auditfirst [put]
  386. func (this *AnnualAuditController) AnnualAudit() {
  387. svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
  388. var jsonblob = this.Ctx.Input.RequestBody
  389. var dataother ShenHeModel
  390. ProfAudit:= this.GetString("ProfAudit")
  391. json.Unmarshal(jsonblob, &dataother)
  392. var list annualaudit.OilAnnualAudit
  393. where := " Id = '" + strconv.Itoa(dataother.AnnualId) + "'"
  394. svc.GetEntityByWhere(""+OilAnnualAuditName, where, &list)
  395. svcActiviti := workflow.GetActivitiService(utils.DBE)
  396. //审核状态判断进行的操作
  397. if dataother.SuccessStatus == 1 {
  398. var errinfo ErrorInfo
  399. var users []suppliercert.UserList
  400. where := "OrganizeId=" + ProfAudit + " and AuditStepCode='" + workflow.PROF_RECE + "'"
  401. svc.GetEntitysByWhere(OilAuditSettingName,where, &users)
  402. var userIds string
  403. for _, tmpUser := range users {
  404. userIds += strconv.FormatInt(tmpUser.UserId, 10) + ","
  405. }
  406. userIds = strings.Trim(userIds, ",")
  407. var ActiComplete workflow.ActiCompleteVM
  408. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  409. ActiComplete.BusinessKey = strconv.Itoa(dataother.AnnualId)
  410. ActiComplete.UserNames = userIds
  411. ActiComplete.UserId = this.User.Id
  412. ActiComplete.Result = "1"
  413. ActiComplete.Remarks = "提交给业务处接收人"
  414. ActiComplete.CallbackUrl = ""
  415. //提交给二级单位初审
  416. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  417. var auditmodel annualaudit.OilAnnualAudit
  418. auditmodel.Status = 1
  419. cols := []string{
  420. "Id",
  421. "Status",
  422. }
  423. if receiveVal == "true" {
  424. _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
  425. if err == nil {
  426. errinfo.Message = "审核通过!"
  427. errinfo.Code = 0
  428. this.Data["json"] = &errinfo
  429. this.ServeJSON()
  430. }else {
  431. errinfo.Message = "审核错误!" + utils.AlertProcess(err.Error())
  432. errinfo.Code = -1
  433. this.Data["json"] = &errinfo
  434. this.ServeJSON()
  435. }
  436. } else {
  437. errinfo.Message = "工作流异常,请联系管理员!"
  438. errinfo.Code = -1
  439. this.Data["json"] = &errinfo
  440. this.ServeJSON()
  441. }
  442. } else if dataother.SuccessStatus == 2 {
  443. var errinfo ErrorInfo
  444. var ActiComplete workflow.ActiCompleteVM
  445. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  446. ActiComplete.BusinessKey = strconv.Itoa(dataother.AnnualId)
  447. ActiComplete.UserNames = ""
  448. ActiComplete.UserId = this.User.Id
  449. ActiComplete.Result = "0"
  450. ActiComplete.Remarks = "初审未通过"
  451. ActiComplete.CallbackUrl = ""
  452. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  453. var auditmodel annualaudit.OilAnnualAudit
  454. auditmodel.Status = 2
  455. cols := []string{
  456. "Id",
  457. "Status",
  458. }
  459. if receiveVal == "true" {
  460. _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
  461. if err == nil {
  462. errinfo.Message = "审核未通过!"
  463. errinfo.Code = 0
  464. this.Data["json"] = &errinfo
  465. this.ServeJSON()
  466. }else {
  467. errinfo.Message = "审核错误!" + utils.AlertProcess(err.Error())
  468. errinfo.Code = -1
  469. this.Data["json"] = &errinfo
  470. this.ServeJSON()
  471. }
  472. } else {
  473. errinfo.Message = "工作流异常,请联系管理员!"
  474. errinfo.Code = -1
  475. this.Data["json"] = &errinfo
  476. this.ServeJSON()
  477. }
  478. } else if dataother.SuccessStatus == 3 {
  479. var errinfo ErrorInfo
  480. var ActiComplete workflow.ActiCompleteVM
  481. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  482. ActiComplete.BusinessKey = strconv.Itoa(dataother.AnnualId)
  483. ActiComplete.UserNames = ProfAudit
  484. ActiComplete.UserId = this.User.Id
  485. ActiComplete.Result = "1"
  486. ActiComplete.Remarks = "提交给业务处专业审核人"
  487. ActiComplete.CallbackUrl = ""
  488. //提交给业务处室专业审核
  489. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  490. var auditmodel annualaudit.OilAnnualAudit
  491. auditmodel.Status = 3
  492. cols := []string{
  493. "Id",
  494. "Status",
  495. }
  496. if receiveVal == "true" {
  497. _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
  498. if err == nil {
  499. errinfo.Message = "已分配接收人!"
  500. errinfo.Code = 0
  501. this.Data["json"] = &errinfo
  502. this.ServeJSON()
  503. }else {
  504. errinfo.Message = "分配错误!" + utils.AlertProcess(err.Error())
  505. errinfo.Code = -1
  506. this.Data["json"] = &errinfo
  507. this.ServeJSON()
  508. }
  509. } else {
  510. errinfo.Message = "工作流异常,请联系管理员!"
  511. errinfo.Code = -1
  512. this.Data["json"] = &errinfo
  513. this.ServeJSON()
  514. }
  515. } else if dataother.SuccessStatus == 4 {
  516. var errinfo ErrorInfo
  517. var ActiComplete workflow.ActiCompleteVM
  518. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  519. ActiComplete.BusinessKey = strconv.Itoa(dataother.AnnualId)
  520. ActiComplete.UserNames = ""
  521. ActiComplete.UserId = this.User.Id
  522. ActiComplete.Result = "1"
  523. ActiComplete.Remarks = "业务处室审核通过"
  524. ActiComplete.CallbackUrl = ""
  525. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  526. var auditmodel annualaudit.OilAnnualAudit
  527. auditmodel.Status = 4
  528. auditmodel.Step = 3
  529. cols := []string{
  530. "Id",
  531. "Status",
  532. "Step",
  533. }
  534. if receiveVal == "true" {
  535. _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
  536. paysvc := paymentinfo.GetPaymentService(utils.DBE)
  537. var Amount float64
  538. if list.SupplierTypeName == "01" {
  539. Amount = 6000
  540. }else if list.SupplierTypeName == "02"{
  541. Amount = 7000
  542. }else if list.SupplierTypeName == "03" {
  543. Amount = 8000
  544. }
  545. err = paysvc.AddPaymentinfo(list.SupplierId, list.CerId, Amount,"2")
  546. if err == nil {
  547. errinfo.Message = "审核通过!"
  548. errinfo.Code = 0
  549. this.Data["json"] = &errinfo
  550. this.ServeJSON()
  551. }else {
  552. errinfo.Message = "审核错误!" + utils.AlertProcess(err.Error())
  553. errinfo.Code = -1
  554. this.Data["json"] = &errinfo
  555. this.ServeJSON()
  556. }
  557. } else {
  558. errinfo.Message = "工作流异常,请联系管理员!"
  559. errinfo.Code = -1
  560. this.Data["json"] = &errinfo
  561. this.ServeJSON()
  562. }
  563. }else if dataother.SuccessStatus == 5 {
  564. var errinfo ErrorInfo
  565. var ActiComplete workflow.ActiCompleteVM
  566. ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
  567. ActiComplete.BusinessKey = strconv.Itoa(dataother.AnnualId)
  568. ActiComplete.UserNames = ""
  569. ActiComplete.UserId = this.User.Id
  570. ActiComplete.Result = "0"
  571. ActiComplete.Remarks = "业务处室审核未通过"
  572. ActiComplete.CallbackUrl = ""
  573. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  574. var auditmodel annualaudit.OilAnnualAudit
  575. auditmodel.Status = 5
  576. cols := []string{
  577. "Id",
  578. "Status",
  579. }
  580. if receiveVal == "true" {
  581. _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
  582. if err == nil {
  583. errinfo.Message = "审核未通过!"
  584. errinfo.Code = 0
  585. this.Data["json"] = &errinfo
  586. this.ServeJSON()
  587. }else {
  588. errinfo.Message = "审核错误!" + utils.AlertProcess(err.Error())
  589. errinfo.Code = -1
  590. this.Data["json"] = &errinfo
  591. this.ServeJSON()
  592. }
  593. } else {
  594. errinfo.Message = "工作流异常,请联系管理员!"
  595. errinfo.Code = -1
  596. this.Data["json"] = &errinfo
  597. this.ServeJSON()
  598. }
  599. }
  600. }