suppliercert.go 53 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811
  1. package oilsupplier
  2. import (
  3. "dashoo.cn/backend/api/business/codecsequence"
  4. msg2 "dashoo.cn/backend/api/business/msg"
  5. "dashoo.cn/backend/api/business/oilsupplier/annualaudit"
  6. "dashoo.cn/backend/api/business/oilsupplier/infochange"
  7. "dashoo.cn/backend/api/business/oilsupplier/oilactivity"
  8. "dashoo.cn/backend/api/business/oilsupplier/supplier"
  9. "dashoo.cn/backend/api/business/oilsupplier/supplierapplytime"
  10. "dashoo.cn/backend/api/business/oilsupplier/suppliercertappend"
  11. "dashoo.cn/backend/api/business/oilsupplier/suppliercertsub"
  12. "dashoo.cn/backend/api/business/oilsupplier/supplierfile"
  13. "dashoo.cn/backend/api/business/organize"
  14. "dashoo.cn/backend/api/business/paymentinfo"
  15. "encoding/json"
  16. "fmt"
  17. "strconv"
  18. "strings"
  19. "time"
  20. "unicode/utf8"
  21. "dashoo.cn/backend/api/business/auditsetting"
  22. "dashoo.cn/backend/api/business/workflow"
  23. "dashoo.cn/backend/api/business/baseUser"
  24. "dashoo.cn/backend/api/business/oilsupplier/suppliercert"
  25. . "dashoo.cn/backend/api/controllers"
  26. "dashoo.cn/business2/userRole"
  27. "dashoo.cn/utils"
  28. )
  29. type OilSupplierCertController struct {
  30. BaseController
  31. }
  32. // @Title 获取列表
  33. // @Description get user by token
  34. // @Success 200 {object} []suppliercert.OilSupplierCert
  35. // @router /list [get]
  36. func (this *OilSupplierCertController) GetEntityList() {
  37. //获取分页信息
  38. page := this.GetPageInfoForm()
  39. where := " 1=1 "
  40. orderby := "Id"
  41. asc := false
  42. Order := this.GetString("Order")
  43. Prop := this.GetString("Prop")
  44. if Order != "" && Prop != "" {
  45. orderby = Prop
  46. if Order == "asc" {
  47. asc = true
  48. }
  49. }
  50. Id := this.GetString("Id")
  51. SupplierId := this.GetString("SupplierId")
  52. AccessCardNo := this.GetString("AccessCardNo")
  53. SupplierTypeCode := this.GetString("SupplierTypeCode")
  54. SupplierTypeName := this.GetString("SupplierTypeName")
  55. RecUnitReason := this.GetString("RecUnitReason")
  56. RecUnitPerson := this.GetString("RecUnitPerson")
  57. RecDate := this.GetString("RecDate")
  58. RecUnitId := this.GetString("RecUnitId")
  59. RecUnitName := this.GetString("RecUnitName")
  60. StatusA := this.GetString("StatusA")
  61. BackReason := this.GetString("BackReason")
  62. InFlag := this.GetString("InFlag")
  63. EffectStartTime := this.GetString("EffectStartTime")
  64. EffectEndTime := this.GetString("EffectEndTime")
  65. AuditProcessNote := this.GetString("AuditProcessNote")
  66. AuditDate := this.GetString("AuditDate")
  67. PayNotice := this.GetString("PayNotice")
  68. SupplierStatus := this.GetString("SupplierStatus")
  69. MgrType := this.GetString("MgrType")
  70. Type := this.GetString("Type")
  71. MgrUnit := this.GetString("MgrUnit")
  72. AddinTime := this.GetString("AddinTime")
  73. EffectTime := this.GetString("EffectTime")
  74. ApplyTime := this.GetString("ApplyTime")
  75. SupplierNo := this.GetString("SupplierNo")
  76. MDMFlag := this.GetString("MDMFlag")
  77. InternalFlag := this.GetString("InternalFlag")
  78. ImportFlag := this.GetString("ImportFlag")
  79. OutsideFlog := this.GetString("OutsideFlog")
  80. Remark := this.GetString("Remark")
  81. IsDelete := this.GetString("IsDelete")
  82. CreateOn := this.GetString("CreateOn")
  83. CreateUserId := this.GetString("CreateUserId")
  84. CreateBy := this.GetString("CreateBy")
  85. ModifiedOn := this.GetString("ModifiedOn")
  86. ModifiedUserId := this.GetString("ModifiedUserId")
  87. ModifiedBy := this.GetString("ModifiedBy")
  88. if Id != "" {
  89. where = where + " and Id like '%" + Id + "%'"
  90. }
  91. if SupplierId != "" {
  92. where = where + " and SupplierId like '%" + SupplierId + "%'"
  93. }
  94. if AccessCardNo != "" {
  95. where = where + " and AccessCardNo like '%" + AccessCardNo + "%'"
  96. }
  97. if SupplierTypeCode != "" {
  98. where = where + " and SupplierTypeCode like '%" + SupplierTypeCode + "%'"
  99. }
  100. if SupplierTypeName != "" {
  101. where = where + " and SupplierTypeName like '%" + SupplierTypeName + "%'"
  102. }
  103. if RecUnitReason != "" {
  104. where = where + " and RecUnitReason like '%" + RecUnitReason + "%'"
  105. }
  106. if RecUnitPerson != "" {
  107. where = where + " and RecUnitPerson like '%" + RecUnitPerson + "%'"
  108. }
  109. if RecDate != "" {
  110. where = where + " and RecDate like '%" + RecDate + "%'"
  111. }
  112. if RecUnitId != "" {
  113. where = where + " and RecUnitId like '%" + RecUnitId + "%'"
  114. }
  115. if RecUnitName != "" {
  116. where = where + " and RecUnitName like '%" + RecUnitName + "%'"
  117. }
  118. if StatusA != "" {
  119. where = where + " and StatusA like '%" + StatusA + "%'"
  120. }
  121. if BackReason != "" {
  122. where = where + " and BackReason like '%" + BackReason + "%'"
  123. }
  124. if InFlag != "" {
  125. where = where + " and InFlag like '%" + InFlag + "%'"
  126. }
  127. if EffectStartTime != "" {
  128. where = where + " and EffectStartTime like '%" + EffectStartTime + "%'"
  129. }
  130. if EffectEndTime != "" {
  131. where = where + " and EffectEndTime like '%" + EffectEndTime + "%'"
  132. }
  133. if AuditProcessNote != "" {
  134. where = where + " and AuditProcessNote like '%" + AuditProcessNote + "%'"
  135. }
  136. if AuditDate != "" {
  137. where = where + " and AuditDate like '%" + AuditDate + "%'"
  138. }
  139. if PayNotice != "" {
  140. where = where + " and PayNotice like '%" + PayNotice + "%'"
  141. }
  142. if SupplierStatus != "" {
  143. where = where + " and SupplierStatus like '%" + SupplierStatus + "%'"
  144. }
  145. if MgrType != "" {
  146. where = where + " and MgrType like '%" + MgrType + "%'"
  147. }
  148. if Type != "" {
  149. where = where + " and Type like '%" + Type + "%'"
  150. }
  151. if MgrUnit != "" {
  152. where = where + " and MgrUnit like '%" + MgrUnit + "%'"
  153. }
  154. if AddinTime != "" {
  155. where = where + " and AddinTime like '%" + AddinTime + "%'"
  156. }
  157. if EffectTime != "" {
  158. where = where + " and EffectTime like '%" + EffectTime + "%'"
  159. }
  160. if ApplyTime != "" {
  161. where = where + " and ApplyTime like '%" + ApplyTime + "%'"
  162. }
  163. if SupplierNo != "" {
  164. where = where + " and SupplierNo like '%" + SupplierNo + "%'"
  165. }
  166. if MDMFlag != "" {
  167. where = where + " and MDMFlag like '%" + MDMFlag + "%'"
  168. }
  169. if InternalFlag != "" {
  170. where = where + " and InternalFlag like '%" + InternalFlag + "%'"
  171. }
  172. if ImportFlag != "" {
  173. where = where + " and ImportFlag like '%" + ImportFlag + "%'"
  174. }
  175. if OutsideFlog != "" {
  176. where = where + " and OutsideFlog like '%" + OutsideFlog + "%'"
  177. }
  178. if Remark != "" {
  179. where = where + " and Remark like '%" + Remark + "%'"
  180. }
  181. if IsDelete != "" {
  182. where = where + " and IsDelete like '%" + IsDelete + "%'"
  183. }
  184. if CreateOn != "" {
  185. where = where + " and CreateOn like '%" + CreateOn + "%'"
  186. }
  187. if CreateUserId != "" {
  188. where = where + " and CreateUserId like '%" + CreateUserId + "%'"
  189. }
  190. if CreateBy != "" {
  191. where = where + " and CreateBy like '%" + CreateBy + "%'"
  192. }
  193. if ModifiedOn != "" {
  194. where = where + " and ModifiedOn like '%" + ModifiedOn + "%'"
  195. }
  196. if ModifiedUserId != "" {
  197. where = where + " and ModifiedUserId like '%" + ModifiedUserId + "%'"
  198. }
  199. if ModifiedBy != "" {
  200. where = where + " and ModifiedBy like '%" + ModifiedBy + "%'"
  201. }
  202. if CreateOn != "" {
  203. dates := strings.Split(CreateOn, ",")
  204. if len(dates) == 2 {
  205. minDate := dates[0]
  206. maxDate := dates[1]
  207. where = where + " and CreateOn>='" + minDate + "' and CreateOn<='" + maxDate + "'"
  208. }
  209. }
  210. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  211. var list []suppliercert.OilSupplierCert
  212. total := svc.GetPagingEntitiesWithOrderBytbl(this.User.AccCode, page.CurrentPage, page.Size, orderby, asc, &list, where)
  213. var datainfo DataInfo
  214. datainfo.Items = list
  215. datainfo.CurrentItemCount = total
  216. datainfo.PageIndex = page.CurrentPage
  217. datainfo.ItemsPerPage = page.Size
  218. this.Data["json"] = &datainfo
  219. this.ServeJSON()
  220. }
  221. // @Title 获取字典列表
  222. // @Description get user by token
  223. // @Success 200 {object} map[string]interface{}
  224. // @router /dictlist [get]
  225. func (this *OilSupplierCertController) GetDictList() {
  226. dictList := make(map[string]interface{})
  227. //dictSvc := items.GetItemsService(utils.DBE)
  228. userSvc := baseUser.GetBaseUserService(utils.DBE)
  229. //customerSvc := svccustomer.GetCustomerService(utils.DBE)
  230. //dictList["WellNo"] = dictSvc.GetKeyValueItems("WellNo", this.User.AccCode)
  231. var userEntity userRole.Base_User
  232. userSvc.GetEntityById(this.User.Id, &userEntity)
  233. dictList["Supervisers"] = userSvc.GetUserListByDepartmentId(this.User.AccCode, userEntity.Departmentid)
  234. //var dictCustomer []svccustomer.Customer
  235. //customerSvc.GetEntitysByWhere(this.User.AccCode + CustomerName, "", &dictCustomer)
  236. //dictList["EntrustCorp"] = &dictCustomer
  237. var datainfo DataInfo
  238. datainfo.Items = dictList
  239. this.Data["json"] = &datainfo
  240. this.ServeJSON()
  241. }
  242. // @Title 获取实体
  243. // @Description 获取实体
  244. // @Success 200 {object} suppliercert.OilSupplierCert
  245. // @router /get/:id [get]
  246. func (this *OilSupplierCertController) GetEntity() {
  247. Id := this.Ctx.Input.Param(":id")
  248. var model suppliercert.OilSupplierCert
  249. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  250. svc.GetEntityByIdBytbl(OilSupplierCertName, Id, &model)
  251. this.Data["json"] = &model
  252. this.ServeJSON()
  253. }
  254. // @Title 获取实体
  255. // @Description 获取实体
  256. // @Success 200 {object} suppliercert.OilSupplierCert
  257. // @router /getbycreatorandtype/:typecode [get]
  258. func (this *OilSupplierCertController) GetEntityByCreatorId() {
  259. creatorId := this.User.Id
  260. typeCode := this.Ctx.Input.Param(":typecode")
  261. var model suppliercert.OilSupplierCert
  262. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  263. where := " CreateUserId = '" + creatorId + "'"
  264. where += " and SupplierTypeCode = '" + typeCode + "'"
  265. svc.GetEntityByWhere(OilSupplierCertName, where, &model)
  266. this.Data["json"] = &model
  267. this.ServeJSON()
  268. }
  269. // @Title 添加
  270. // @Description 新增
  271. // @Success 200 {object} controllers.Request
  272. // @router /add [post]
  273. func (this *OilSupplierCertController) AddEntity() {
  274. var model suppliercert.OilSupplierCert
  275. var jsonBlob = this.Ctx.Input.RequestBody
  276. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  277. json.Unmarshal(jsonBlob, &model)
  278. model.IsRestrict = 1
  279. model.CreateOn = time.Now()
  280. model.CreateBy = this.User.Realname
  281. model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
  282. //model.OrganizeId, _ = utils.StrTo(this.User.DepartmentId).Int()
  283. _, err := svc.InsertEntityBytbl(OilSupplierCertName, &model)
  284. var errinfo ErrorDataInfo
  285. if err == nil {
  286. //新增
  287. errinfo.Message = "添加成功!"
  288. errinfo.Code = 0
  289. errinfo.Item = model.Id
  290. this.Data["json"] = &errinfo
  291. this.ServeJSON()
  292. } else {
  293. errinfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
  294. errinfo.Code = -1
  295. this.Data["json"] = &errinfo
  296. this.ServeJSON()
  297. }
  298. }
  299. // @Title 修改实体
  300. // @Description 修改实体
  301. // @Success 200 {object} controllers.Request
  302. // @router /update/:id [post]
  303. func (this *OilSupplierCertController) UpdateEntity() {
  304. id := this.Ctx.Input.Param(":id")
  305. var errinfo ErrorInfo
  306. if id == "" {
  307. errinfo.Message = "操作失败!请求信息不完整"
  308. errinfo.Code = -2
  309. this.Data["json"] = &errinfo
  310. this.ServeJSON()
  311. return
  312. }
  313. var model suppliercert.OilSupplierCert
  314. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  315. var jsonBlob = this.Ctx.Input.RequestBody
  316. json.Unmarshal(jsonBlob, &model)
  317. model.ModifiedOn = time.Now()
  318. model.ModifiedBy = this.User.Realname
  319. model.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
  320. cols := []string{
  321. "Id",
  322. "SupplierId",
  323. "AccessCardNo",
  324. "SupplierTypeCode",
  325. "SupplierTypeName",
  326. "RecUnitReason",
  327. "RecUnitPerson",
  328. "RecDate",
  329. "RecUnitId",
  330. "RecUnitName",
  331. "Status",
  332. "BackReason",
  333. "InFlag",
  334. "EffectStartTime",
  335. "EffectEndTime",
  336. "AuditProcessNote",
  337. "AuditDate",
  338. "PayNotice",
  339. "SupplierStatus",
  340. "MgrType",
  341. "Type",
  342. "MgrUnit",
  343. "AddinTime",
  344. "EffectTime",
  345. "ApplyTime",
  346. "SupplierNo",
  347. "MDMFlag",
  348. "InternalFlag",
  349. "ImportFlag",
  350. "OutsideFlog",
  351. "Remark",
  352. "IsDelete",
  353. "CreateOn",
  354. "CreateUserId",
  355. "CreateBy",
  356. "ModifiedOn",
  357. "ModifiedUserId",
  358. "ModifiedBy",
  359. }
  360. err := svc.UpdateEntityBytbl(OilSupplierCertName, id, &model, cols)
  361. if err == nil {
  362. errinfo.Message = "修改成功!"
  363. errinfo.Code = 0
  364. this.Data["json"] = &errinfo
  365. this.ServeJSON()
  366. } else {
  367. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  368. errinfo.Code = -1
  369. this.Data["json"] = &errinfo
  370. this.ServeJSON()
  371. }
  372. }
  373. // @Title 企业入库
  374. // @Description 企业入库
  375. // @Success 200 {object} controllers.Request
  376. // @router /updatestorage/:id [post]
  377. func (this *OilSupplierCertController) UpdateStorage() {
  378. id := this.Ctx.Input.Param(":id")
  379. status := this.GetString("Status")
  380. PACNumber := this.GetString("PACNumber")
  381. SupplierId := this.GetString("SupplierId")
  382. var errinfo ErrorInfo
  383. if id == "" {
  384. errinfo.Message = "操作失败!请求信息不完整"
  385. errinfo.Code = -2
  386. this.Data["json"] = &errinfo
  387. this.ServeJSON()
  388. return
  389. }
  390. var model suppliercert.OilSupplierCert
  391. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  392. //var jsonBlob = this.Ctx.Input.RequestBody
  393. //json.Unmarshal(jsonBlob, &model)
  394. var err error
  395. if status == suppliercert.NO_CENT_AUDIT_STATUS {
  396. model.Status = suppliercert.DRAFT_STATUS
  397. cols := []string{
  398. "Status",
  399. }
  400. err = svc.UpdateEntityBytbl(OilSupplierCertName, id, &model, cols)
  401. } else {
  402. //TODO: 入库改用大工作流
  403. var activity oilactivity.OilActivity
  404. where := "EntityId=" + id + " and ActType='" + oilactivity.STORAGE + "'"
  405. svc.GetEntity(&activity, where)
  406. svcActiviti := workflow.GetActivitiService(utils.DBE)
  407. var ActiComplete workflow.ActiCompleteVM
  408. ActiComplete.ProcessKey = activity.ProcessKey
  409. ActiComplete.BusinessKey = activity.BusinessKey
  410. ActiComplete.UserId = this.User.Id
  411. ActiComplete.Remarks = ""
  412. ActiComplete.Result = "1"
  413. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  414. fmt.Println(receiveVal)
  415. model.Status = suppliercert.STORE_STATUS
  416. model.Step = 7
  417. model.StorageOn = time.Now()
  418. model.ApplyTime = time.Now().AddDate(1, 0, 0)
  419. model.InFlag = "1"
  420. model.ModifiedOn = time.Now()
  421. model.ModifiedBy = this.User.Realname
  422. model.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
  423. cols := []string{
  424. "Step",
  425. "Status",
  426. "ApplyTime",
  427. "InFlag",
  428. "StorageOn",
  429. "ModifiedOn",
  430. "ModifiedUserId",
  431. "ModifiedBy",
  432. }
  433. err = svc.UpdateEntityBytbl(OilSupplierCertName, id, &model, cols)
  434. var model2 suppliercertsub.OilSupplierCertSub
  435. model2.CertSubStatus = "1"
  436. whereid := " SupplierCertId = " + id
  437. svc.UpdateEntityBywheretbl(OilSupplierCertSubName, &model2, []string{"CertSubStatus"}, whereid)
  438. var model3 supplier.OilSupplier
  439. model3.PACNumber = PACNumber
  440. cols3 := []string{"PACNumber"}
  441. svc.UpdateEntityByIdCols(SupplierId, &model3, cols3)
  442. }
  443. if err == nil {
  444. errinfo.Message = "提交成功!"
  445. errinfo.Code = 0
  446. this.Data["json"] = &errinfo
  447. this.ServeJSON()
  448. } else {
  449. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  450. errinfo.Code = -1
  451. this.Data["json"] = &errinfo
  452. this.ServeJSON()
  453. }
  454. }
  455. // @Title 删除单条信息
  456. // @Description
  457. // @Success 200 {object} ErrorInfo
  458. // @Failure 403 :id 为空
  459. // @router /delete/:Id [delete]
  460. func (this *OilSupplierCertController) DeleteEntity() {
  461. Id := this.Ctx.Input.Param(":Id")
  462. var errinfo ErrorInfo
  463. if Id == "" {
  464. errinfo.Message = "操作失败!请求信息不完整"
  465. errinfo.Code = -2
  466. this.Data["json"] = &errinfo
  467. this.ServeJSON()
  468. return
  469. }
  470. var model suppliercert.OilSupplierCert
  471. var entityempty suppliercert.OilSupplierCert
  472. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  473. opdesc := "删除-" + Id
  474. err := svc.DeleteOperationAndWriteLogBytbl(OilSupplierCertName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "钻井日报")
  475. if err == nil {
  476. errinfo.Message = "删除成功"
  477. errinfo.Code = 0
  478. this.Data["json"] = &errinfo
  479. this.ServeJSON()
  480. } else {
  481. errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
  482. errinfo.Code = -1
  483. this.Data["json"] = &errinfo
  484. this.ServeJSON()
  485. }
  486. }
  487. // @Title 启动工作流前,检查准入申请填入的项目是否完整,是否可提交
  488. // @Description 检查准入申请填入的项目是否完整
  489. // @Success 200 {object} ErrorDataInfo
  490. // @router /check-suppliercert-submit/:id [post]
  491. func (this *OilSupplierCertController) CheckSupplierCertCanSubmit() {
  492. certId := this.Ctx.Input.Param(":id")
  493. var errinfo ErrorDataInfo
  494. defer func() { //finally处理失败的异常
  495. if err := recover(); err != nil {
  496. errinfo.Message = err.(string)
  497. errinfo.Code = -1
  498. this.Data["json"] = &errinfo
  499. this.ServeJSON()
  500. } else {
  501. //返回正确结果
  502. errinfo.Message = "检查通过"
  503. errinfo.Code = 0
  504. this.Data["json"] = &errinfo
  505. this.ServeJSON()
  506. }
  507. }()
  508. //取出准入申请表
  509. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  510. var supplierCertEntity suppliercert.OilSupplierCert
  511. certSrv.GetEntityById(certId, &supplierCertEntity)
  512. certSrv.IsSupplierCertCanSubmit(strconv.Itoa(supplierCertEntity.Id), certId)
  513. }
  514. // @Title 企业用户提交按钮 --启动工作流
  515. // @Description 企业用户提交按钮
  516. // @Success 200 {object} controllers.Request
  517. // @router /first-audit/:id [post]
  518. func (this *OilSupplierCertController) CompanyAuditEntity() {
  519. certId := this.Ctx.Input.Param(":id")
  520. unitId := this.GetString("UnitId")
  521. // typeCode := this.GetString("TypeCode")
  522. AuditRemark := this.GetString("AuditRemark")
  523. var errinfo ErrorDataInfo
  524. defer func() { //finally处理失败的异常
  525. if err := recover(); err != nil {
  526. errinfo.Message = err.(string)
  527. errinfo.Code = -1
  528. this.Data["json"] = &errinfo
  529. this.ServeJSON()
  530. } else {
  531. //返回正确结果
  532. errinfo.Message = "提交成功"
  533. errinfo.Code = 0
  534. this.Data["json"] = &errinfo
  535. this.ServeJSON()
  536. }
  537. }()
  538. if this.User.IsCompanyUser == 1 {
  539. panic("非企业用户,请用分办功能提交!")
  540. }
  541. //取出准入申请表
  542. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  543. var supplierCertEntity suppliercert.OilSupplierCert
  544. certSrv.GetEntityById(certId, &supplierCertEntity)
  545. certSrv.IsSupplierCertCanSubmit(strconv.Itoa(supplierCertEntity.Id), certId)
  546. //取出企业主表
  547. supplierSvc := supplier.GetOilSupplierService(utils.DBE)
  548. var supplierEntity supplier.OilSupplier
  549. //检查是否可提交
  550. supplierSvc.GetEntityById(supplierCertEntity.SupplierId, &supplierEntity)
  551. status, _ := strconv.Atoi(supplierCertEntity.Status)
  552. if status > 0 {
  553. panic("工作流已经启动,请刷新重试!")
  554. }
  555. svcActiviti := workflow.GetActivitiService(utils.DBE)
  556. //启动工作流
  557. businessKey := certId + "-" + strconv.Itoa(supplierCertEntity.AuditIndex)
  558. processInstanceId := supplierCertEntity.WorkflowId
  559. // 如果被驳回,不再新启工作流
  560. if processInstanceId == "" {
  561. processInstanceId := svcActiviti.StartProcess2(workflow.OIL_ENUSER_SUPPLIER_APPLY, businessKey, this.User.Id, "1", supplierCertEntity.SupplierTypeCode, supplierEntity.SupplierName)
  562. if len(processInstanceId) <= 0 {
  563. panic("工作流启动失败!")
  564. }
  565. }
  566. // 将启动和工作流,选择的初审和复审人员保存下来
  567. cols := []string{
  568. "Id",
  569. "WorkflowId",
  570. "BusinessKey",
  571. "ProcessKey",
  572. "CommitComId",
  573. "AuditIndex",
  574. }
  575. supplierCertEntity.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  576. supplierCertEntity.BusinessKey = businessKey
  577. supplierCertEntity.WorkflowId = processInstanceId
  578. supplierCertEntity.CommitComId = unitId
  579. supplierCertEntity.AuditIndex += 1
  580. certSrv.UpdateEntityByIdCols(certId, supplierCertEntity, cols)
  581. var ActiComplete workflow.ActiCompleteVM
  582. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  583. ActiComplete.BusinessKey = businessKey
  584. ActiComplete.UserId = this.User.Id
  585. ActiComplete.Result = "1" //提交给二级单位分办
  586. ActiComplete.Remarks = AuditRemark
  587. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  588. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  589. if receiveVal != "true" {
  590. panic("工作流异常,请联系管理员!" + receiveVal)
  591. }
  592. }
  593. // @Title 二级单位提交审批 --启动工作流
  594. // @Description 二级单位提交审批
  595. // @Success 200 {object} controllers.Request
  596. // @router /unit-audit/:id [post]
  597. func (this *OilSupplierCertController) UnitAuditEntity() {
  598. certId := this.Ctx.Input.Param(":id")
  599. firstAudit := this.GetString("FirstAudit")
  600. secondAudit := this.GetString("SecondAudit")
  601. thirdAudit := this.GetString("ThirdAudit")
  602. // typeCode := this.GetString("TypeCode")
  603. AuditRemark := this.GetString("AuditRemark")
  604. userId := this.User.Id
  605. var baseUserInfo userRole.Base_User
  606. userService := userRole.GetUserService(utils.DBE)
  607. userService.GetEntityById(userId, &baseUserInfo)
  608. unitId := baseUserInfo.UnitId
  609. var errinfo ErrorDataInfo
  610. defer func() { //finally处理失败的异常
  611. if err := recover(); err != nil {
  612. errinfo.Message = err.(string)
  613. errinfo.Code = -1
  614. this.Data["json"] = &errinfo
  615. this.ServeJSON()
  616. } else {
  617. //返回正确结果
  618. errinfo.Message = "审核提交成功"
  619. errinfo.Code = 0
  620. this.Data["json"] = &errinfo
  621. this.ServeJSON()
  622. }
  623. }()
  624. //取出准入表信息
  625. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  626. var supplierCertEntity suppliercert.OilSupplierCert
  627. certSrv.GetEntityById(certId, &supplierCertEntity)
  628. //检查是否可提交
  629. certSrv.IsSupplierCertCanSubmit(strconv.Itoa(supplierCertEntity.Id), certId)
  630. //取出企业主表
  631. supplierSvc := supplier.GetOilSupplierService(utils.DBE)
  632. var supplierEntity supplier.OilSupplier
  633. supplierSvc.GetEntityById(supplierCertEntity.SupplierId, &supplierEntity)
  634. svcActiviti := workflow.GetActivitiService(utils.DBE)
  635. //启动工作流
  636. businessKey := certId + "-" + strconv.Itoa(supplierCertEntity.AuditIndex)
  637. processInstanceId := supplierCertEntity.WorkflowId
  638. // 如果被驳回,不再新启工作流
  639. if processInstanceId == "" {
  640. processInstanceId = svcActiviti.StartProcess2(workflow.OIL_ENUSER_SUPPLIER_APPLY, businessKey, this.User.Id, "1", supplierCertEntity.SupplierTypeCode, supplierEntity.SupplierName)
  641. if len(processInstanceId) <= 0 {
  642. panic("工作流启动失败!")
  643. }
  644. }
  645. // 将启动和工作流,选择的初审和复审人员保存下来
  646. cols := []string{
  647. "Id",
  648. "FirstAudit",
  649. "SecondAudit",
  650. "thirdAudit",
  651. "WorkflowId",
  652. "BusinessKey",
  653. "ProcessKey",
  654. "CommitComId",
  655. "AuditIndex",
  656. }
  657. supplierCertEntity.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  658. supplierCertEntity.BusinessKey = businessKey
  659. supplierCertEntity.WorkflowId = processInstanceId
  660. supplierCertEntity.FirstAudit, _ = strconv.Atoi(firstAudit)
  661. supplierCertEntity.SecondAudit, _ = strconv.Atoi(secondAudit)
  662. supplierCertEntity.ThirdAudit, _ = strconv.Atoi(thirdAudit)
  663. supplierCertEntity.CommitComId = strconv.Itoa(unitId)
  664. supplierCertEntity.AuditIndex += 1
  665. certSrv.UpdateEntityByIdCols(certId, supplierCertEntity, cols)
  666. var ActiComplete workflow.ActiCompleteVM
  667. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  668. ActiComplete.BusinessKey = supplierCertEntity.BusinessKey
  669. ActiComplete.UserId = this.User.Id // 当前审批操作人员
  670. //ActiComplete.UserNames = secondAudit // 当前审批操作人员
  671. ActiComplete.Result = "2" //分办提交给二级单位初审
  672. ActiComplete.Remarks = AuditRemark
  673. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  674. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  675. if receiveVal != "true" {
  676. panic("工作流异常,请联系管理员!" + receiveVal)
  677. }
  678. }
  679. // @Title 二级单位分办 --审批
  680. // @Description 二级分办
  681. // @Success 200 {object} controllers.Request
  682. // @router /separate-audit/:id [post]
  683. func (this *OilSupplierCertController) SeparateAuditEntity() {
  684. certId := this.Ctx.Input.Param(":id")
  685. firstAudit := this.GetString("FirstAudit")
  686. secondAudit := this.GetString("SecondAudit")
  687. thirdAudit := this.GetString("ThirdAudit")
  688. // typeCode := this.GetString("TypeCode")
  689. AuditRemark := this.GetString("AuditRemark")
  690. var errinfo ErrorDataInfo
  691. defer func() { //finally处理失败的异常
  692. if err := recover(); err != nil {
  693. errinfo.Message = err.(string)
  694. errinfo.Code = -1
  695. this.Data["json"] = &errinfo
  696. this.ServeJSON()
  697. } else {
  698. //返回正确结果
  699. errinfo.Message = "审核提交成功"
  700. errinfo.Code = 0
  701. this.Data["json"] = &errinfo
  702. this.ServeJSON()
  703. }
  704. }()
  705. // 取出准入表信息
  706. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  707. var supplierCertEntity suppliercert.OilSupplierCert
  708. certSrv.GetEntityById(certId, &supplierCertEntity)
  709. // 将选择的初审和复审人员保存下来
  710. cols := []string{
  711. "FirstAudit",
  712. "SecondAudit",
  713. "thirdAudit",
  714. }
  715. supplierCertEntity.FirstAudit, _ = strconv.Atoi(firstAudit)
  716. supplierCertEntity.SecondAudit, _ = strconv.Atoi(secondAudit)
  717. supplierCertEntity.ThirdAudit, _ = strconv.Atoi(thirdAudit)
  718. certSrv.UpdateEntityByIdCols(certId, supplierCertEntity, cols)
  719. svcActiviti := workflow.GetActivitiService(utils.DBE)
  720. var ActiComplete workflow.ActiCompleteVM
  721. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  722. ActiComplete.BusinessKey = supplierCertEntity.BusinessKey
  723. ActiComplete.UserId = this.User.Id // 审批人员
  724. // ActiComplete.UserNames = secondAudit // 初审人员
  725. ActiComplete.Result = "1" //分办完成后只向前走
  726. ActiComplete.Remarks = AuditRemark
  727. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  728. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  729. if receiveVal != "true" {
  730. panic("工作流异常,请联系管理员!" + receiveVal)
  731. }
  732. }
  733. // @Title 分办之后的各级审批 --审批 包含:二级单位初审、复审, 业务处室专业审核
  734. // @Description 分办之后的各级审批
  735. // @Success 200 {object} controllers.Request
  736. // @router /common-audit/:id [post]
  737. func (this *OilSupplierCertController) CommonAuditEntity() {
  738. certId := this.Ctx.Input.Param(":id")
  739. result := this.GetString("result")
  740. AuditRemark := this.GetString("AuditRemark")
  741. var errinfo ErrorDataInfo
  742. defer func() { //finally处理失败的异常
  743. if err := recover(); err != nil {
  744. errinfo.Message = err.(string)
  745. errinfo.Code = -1
  746. this.Data["json"] = &errinfo
  747. this.ServeJSON()
  748. } else {
  749. //返回正确结果
  750. errinfo.Message = "审核提交成功"
  751. errinfo.Code = 0
  752. this.Data["json"] = &errinfo
  753. this.ServeJSON()
  754. }
  755. }()
  756. //取出准入表信息
  757. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  758. var supplierCertEntity suppliercert.OilSupplierCert
  759. certSrv.GetEntityById(certId, &supplierCertEntity)
  760. svcActiviti := workflow.GetActivitiService(utils.DBE)
  761. var ActiComplete workflow.ActiCompleteVM
  762. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  763. ActiComplete.BusinessKey = supplierCertEntity.BusinessKey
  764. ActiComplete.UserId = this.User.Id //审批人员
  765. ActiComplete.Result = result //前台审批[同意、不同意]
  766. ActiComplete.Remarks = AuditRemark
  767. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  768. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  769. if receiveVal != "true" {
  770. panic("工作流异常,请联系管理员!" + receiveVal)
  771. }
  772. }
  773. // @Title 业务处室接收分办 专业审批
  774. // @Description 业务处室接收分办 专业审批
  775. // @Success 200 {object} controllers.Request
  776. // @router /business-separate-audit/:id [post]
  777. func (this *OilSupplierCertController) BusinessOfficeSeparateAuditEntity() {
  778. certId := this.Ctx.Input.Param(":id")
  779. ProfessionalAudit := this.GetString("ProfessionalAudit")
  780. AuditRemark := this.GetString("AuditRemark")
  781. var errInfo ErrorDataInfo
  782. defer func() { //finally处理失败的异常
  783. if err := recover(); err != nil {
  784. errInfo.Message = err.(string)
  785. errInfo.Code = -1
  786. this.Data["json"] = &errInfo
  787. this.ServeJSON()
  788. } else {
  789. //返回正确结果
  790. errInfo.Message = "审核提交成功"
  791. errInfo.Code = 0
  792. this.Data["json"] = &errInfo
  793. this.ServeJSON()
  794. }
  795. }()
  796. //取出准入表信息
  797. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  798. var supplierCertEntity suppliercert.OilSupplierCert
  799. certSrv.GetEntityById(certId, &supplierCertEntity)
  800. svcActiviti := workflow.GetActivitiService(utils.DBE)
  801. var ActiComplete workflow.ActiCompleteVM
  802. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  803. ActiComplete.BusinessKey = supplierCertEntity.BusinessKey
  804. ActiComplete.UserId = this.User.Id //审批人员
  805. ActiComplete.Result = "1" //前台审批[同意、不同意]
  806. ActiComplete.UserNames = ProfessionalAudit
  807. ActiComplete.Remarks = AuditRemark
  808. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  809. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  810. if receiveVal != "true" {
  811. panic("工作流异常,请联系管理员!" + receiveVal)
  812. }
  813. cols := []string{
  814. "Id",
  815. "Status",
  816. "ProfessionalAudit",
  817. }
  818. supplierCertId := strings.Split(supplierCertEntity.BusinessKey, "-")[0]
  819. supplierCertEntity.Status = suppliercert.PROF_AUDIT_STATUS //专业处室接收
  820. supplierCertEntity.ProfessionalAudit, _ = strconv.Atoi(ProfessionalAudit)
  821. certSrv.UpdateEntityByIdCols(supplierCertId, supplierCertEntity, cols)
  822. }
  823. // @Title 集中审批
  824. // @Description 集中审批
  825. // @Success 200 {object} controllers.Request
  826. // @router /concentrate-audit/:id [post]
  827. func (this *OilSupplierCertController) ConcentrateAuditEntity() {
  828. certId := this.Ctx.Input.Param(":id")
  829. AuditRemark := this.GetString("AuditRemark")
  830. var errInfo ErrorDataInfo
  831. defer func() { //finally处理失败的异常
  832. if err := recover(); err != nil {
  833. errInfo.Message = err.(string)
  834. errInfo.Code = -1
  835. this.Data["json"] = &errInfo
  836. this.ServeJSON()
  837. } else {
  838. //返回正确结果
  839. errInfo.Message = "审核提交成功"
  840. errInfo.Code = 0
  841. this.Data["json"] = &errInfo
  842. this.ServeJSON()
  843. }
  844. }()
  845. //取出准入表信息
  846. certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  847. var supplierCertEntity suppliercert.OilSupplierCert
  848. certSrv.GetEntityById(certId, &supplierCertEntity)
  849. svcActiviti := workflow.GetActivitiService(utils.DBE)
  850. var ActiComplete workflow.ActiCompleteVM
  851. ActiComplete.ProcessKey = workflow.OIL_ENUSER_SUPPLIER_APPLY
  852. ActiComplete.BusinessKey = supplierCertEntity.BusinessKey
  853. ActiComplete.UserId = this.User.Id //审批人员
  854. ActiComplete.Result = "1" //前台审批[同意、不同意]
  855. ActiComplete.Remarks = AuditRemark
  856. ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
  857. receiveVal := svcActiviti.TaskComplete(ActiComplete)
  858. if receiveVal != "true" {
  859. panic("工作流异常,请联系管理员!" + receiveVal)
  860. }
  861. //cols := []string{
  862. // "Id",
  863. // "Status",
  864. //}
  865. //supplierCertId := strings.Split(supplierCertEntity.BusinessKey, "-")[0]
  866. //supplierCertEntity.Status = suppliercert.PROF_AUDIT_STATUS //专业处室接收
  867. //certSrv.UpdateEntityByIdCols(supplierCertId, supplierCertEntity, cols)
  868. }
  869. // @Title 获取实体
  870. // @Description 获取实体
  871. // @Success 200 {object} controllers.Request
  872. // @router /isaccess [get]
  873. func (this *OilSupplierCertController) IsAccess() {
  874. auditstepcode := this.GetString("auditstepcode")
  875. processkey := this.GetString("processkey")
  876. id := this.GetString("id")
  877. //var users []userRole.Base_RoleList
  878. //var auditWorkflow auditsetting.Base_OilAuditSetting
  879. //rsvc := auditsetting.GetOilAuditSettingService(utils.DBE)
  880. res := false
  881. if auditstepcode == workflow.PROF_CONCENT { // 集中审批
  882. //rsvc.GetAuditStepRoleEntity(OilAuditSettingName, this.User.DepartmentId, workflow.PROF_AUDIT, &auditWorkflow)
  883. //users = rsvc.GetUserByRole("10000204", this.User.AccCode)
  884. //for _, user := range users {
  885. // if this.User.Id == strconv.Itoa(int(user.Id)) {
  886. // res = true
  887. // break
  888. // }
  889. //}
  890. var setting auditsetting.Base_OilAuditSetting
  891. svc := organize.GetOrganizeService(utils.DBE)
  892. where := "AuditStepCode='" + auditstepcode + "'"
  893. svc.GetEntity(&setting, where)
  894. res = svc.UserInRoleById(this.User.Id, strconv.Itoa(setting.RoleId))
  895. } else {
  896. //var users []suppliercert.UserList
  897. //where := "OrganizeId=" + this.User.DepartmentId + " and AuditStepCode='" + auditstepcode + "'"
  898. //rsvc.GetEntitysByWhere(OilAuditSettingName,where, &users)
  899. //rsvc.GetAuditStepRoleEntity(OilAuditSettingName, this.User.DepartmentId, auditstepcode, &auditWorkflow)
  900. //users = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow.RoleId), this.User.AccCode)
  901. //var users []userRole.Base_RoleList
  902. //certSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
  903. //certSrv.GetAuditUser(this.User.DepartmentId, auditstepcode, &users)
  904. var setting auditsetting.Base_OilAuditSetting
  905. svc := organize.GetOrganizeService(utils.DBE)
  906. where := "AuditStepCode='" + auditstepcode + "'"
  907. svc.GetEntity(&setting, where)
  908. res = svc.UserInRoleById(this.User.Id, strconv.Itoa(setting.RoleId))
  909. if res {
  910. actisvc := workflow.GetActivitiService(utils.DBE)
  911. ids := actisvc.GetMyTasks(processkey, this.User.Id)
  912. res = strings.Contains(ids, id)
  913. }
  914. //for _, user := range users {
  915. // if this.User.Id == strconv.Itoa(int(user.Id)) {
  916. // res = true
  917. // break
  918. // }
  919. //}
  920. }
  921. this.Data["json"] = res
  922. this.ServeJSON()
  923. }
  924. // @Title 获取准入编码
  925. // @Description 获取准入编码
  926. // @Success 200 {object} controllers.Request
  927. // @router /createaccesscardno/:type [get]
  928. func (this *OilSupplierCertController) CreateAccessCardNo() {
  929. Id := this.GetString("Id")
  930. certId := this.GetString(("SupplierCertId"))
  931. typeCode := this.Ctx.Input.Param(":type")
  932. codecSvc := codecsequence.GetCodecSequenceService(utils.DBE)
  933. var entitycert suppliercert.OilSupplierCert
  934. var entity supplier.OilSupplier
  935. //where := "Id = " + Id
  936. //codecSvc.GetEntities(&model, "")
  937. seqStr := ""
  938. cols := []string{}
  939. if (typeCode == "01") { // 物质
  940. has := true
  941. for has {
  942. seqStr = codecSvc.GetWZAccessCardNo(this.User.AccCode)
  943. where := "SupplierTypeCode='" + typeCode + "' and AccessCardNo='" + seqStr + "'"
  944. has = codecSvc.GetEntity(&entitycert, where)
  945. }
  946. cols = []string{"WZAccessCardNo"}
  947. entity.WZAccessCardNo = seqStr
  948. } else if typeCode == "03" { //技术服务
  949. has := true
  950. for has {
  951. seqStr = codecSvc.GetJFAccessCardNo(this.User.AccCode)
  952. where := "SupplierTypeCode='" + typeCode + "' and AccessCardNo='" + seqStr + "'"
  953. has = codecSvc.GetEntity(&entitycert, where)
  954. }
  955. cols = []string{"JFAccessCardNo"}
  956. entity.JFAccessCardNo = seqStr
  957. } else if typeCode == "02" { // 基建
  958. has := true
  959. for has {
  960. seqStr = codecSvc.GetJSAccessCardNo(this.User.AccCode)
  961. where := "SupplierTypeCode='" + typeCode + "' and AccessCardNo='" + seqStr + "'"
  962. has = codecSvc.GetEntity(&entitycert, where)
  963. }
  964. cols = []string{"JSAccessCardNo"}
  965. entity.JSAccessCardNo = seqStr
  966. }
  967. codecSvc.UpdateEntityByIdCols(Id, &entity, cols)
  968. var cert suppliercert.OilSupplierCert
  969. certcols := []string{"AccessCardNo"}
  970. cert.AccessCardNo = seqStr
  971. codecSvc.UpdateEntityByIdCols(certId, &cert, certcols)
  972. this.Data["json"] = seqStr
  973. this.ServeJSON()
  974. }
  975. // @Title 修改准入标识
  976. // @Description 修改准入标识
  977. // @Success 200 {object} controllers.Request
  978. // @router /updateinflag/ [get]
  979. func (this *OilSupplierCertController) UpdateInFlag() {
  980. t := time.Now()
  981. session := utils.DBE.NewSession()
  982. var certentitys []suppliercert.OilSupplierCert
  983. svc := suppliercert.GetOilSupplierCertSession(session)
  984. defer func() {
  985. session.Close()
  986. }()
  987. err := session.Begin()
  988. svc.GetEntities(&certentitys, "InFlag!='3'")
  989. currenttime := time.Now()
  990. //.Format("2006-01-02")
  991. for i := 0; i < len(certentitys); i++ {
  992. if currenttime.After(certentitys[i].ApplyTime) && !currenttime.After(certentitys[i].ApplyTime.AddDate(1, 0, 0)) && certentitys[i].InFlag != "2" {
  993. var certentity suppliercert.OilSupplierCert
  994. certentity.InFlag = "2"
  995. certentity.Remark = "未年审"
  996. cols := []string{"InFlag", "Remark"}
  997. _, err = svc.UpdateEntityByIdCols(certentitys[i].Id, &certentity, cols)
  998. if err != nil {
  999. session.Rollback()
  1000. }
  1001. }
  1002. if currenttime.After(certentitys[i].ApplyTime.AddDate(1, 0, 0)) {
  1003. fmt.Println(time.Now().Format("2006-01-02"), certentitys[i].ApplyTime.AddDate(1, 0, 0).Format("2006-01-02"))
  1004. var certentity suppliercert.OilSupplierCert
  1005. certentity.InFlag = "3"
  1006. certentity.Remark = "超1年未年审"
  1007. cols := []string{"InFlag", "Remark"}
  1008. _, err = svc.UpdateEntityByIdCols(certentitys[i].Id, &certentity, cols)
  1009. if err != nil {
  1010. session.Rollback()
  1011. }
  1012. }
  1013. }
  1014. err = session.Commit()
  1015. fmt.Println(err)
  1016. elapsed := time.Since(t)
  1017. fmt.Println(elapsed, "更新准入标识")
  1018. }
  1019. // @Title 退回
  1020. // @Description
  1021. // @Success 200 {object} controllers.Request
  1022. // @router /backstatus/:Id [post]
  1023. func (this *OilSupplierCertController) BackStatus() {
  1024. id := this.Ctx.Input.Param(":Id")
  1025. status := this.GetString("Status")
  1026. backRemark := this.GetString("BackRemark")
  1027. var entity suppliercert.OilSupplierCert
  1028. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  1029. cols := []string{"Status", "BackRemark"}
  1030. entity.Status = status
  1031. entity.BackRemark = backRemark
  1032. _, err := svc.UpdateEntityByIdCols(id, &entity, cols)
  1033. var errinfo ErrorDataInfo
  1034. if err == nil {
  1035. //TODO: 入库改用大工作流
  1036. var activity oilactivity.OilActivity
  1037. where := "EntityId=" + id + " and ActType='" + oilactivity.STORAGE + "'"
  1038. svc.GetEntity(&activity, where)
  1039. svcActiviti := workflow.GetActivitiService(utils.DBE)
  1040. var ActiComplete workflow.ActiCompleteVM
  1041. ActiComplete.ProcessKey = activity.ProcessKey //TODO: 获取工作流KEY
  1042. ActiComplete.BusinessKey = activity.BusinessKey //TODO: 获取业务表ID
  1043. ActiComplete.UserId = this.User.Id
  1044. ActiComplete.Remarks = ""
  1045. ActiComplete.Result = "1"
  1046. svcActiviti.TaskComplete(ActiComplete)
  1047. errinfo.Message = "操作成功!"
  1048. errinfo.Code = 00
  1049. this.Data["json"] = &errinfo
  1050. this.ServeJSON()
  1051. } else {
  1052. errinfo.Message = "操作失败!"
  1053. errinfo.Code = -1
  1054. this.Data["json"] = &errinfo
  1055. this.ServeJSON()
  1056. }
  1057. }
  1058. // @Title 保存准入编码
  1059. // @Description 保存准入编码
  1060. // @Success 200 {object} controllers.Request
  1061. // @router /saveaccesscardno/:Id [get]
  1062. func (this *OilSupplierCertController) SaveAccessCardNo() {
  1063. id := this.Ctx.Input.Param(":Id")
  1064. certId := this.GetString(("SupplierCertId"))
  1065. typeCode := this.GetString("typeCode")
  1066. accessCardNo := this.GetString("AccessCardNo")
  1067. var model []suppliercert.OilSupplierCert
  1068. var supplier supplier.OilSupplier
  1069. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  1070. where := "AccessCardNo='" + accessCardNo + "'"
  1071. svc.GetEntities(&model, where)
  1072. supcols := []string{}
  1073. if model == nil || len(model) == 0 {
  1074. if (typeCode == "01") { // 物质
  1075. supplier.WZAccessCardNo = accessCardNo
  1076. supcols = []string{"WZAccessCardNo"}
  1077. } else if typeCode == "03" { //技术服务
  1078. supplier.JFAccessCardNo = accessCardNo
  1079. supcols = []string{"JFAccessCardNo"}
  1080. } else if typeCode == "02" { // 基建
  1081. supplier.JSAccessCardNo = accessCardNo
  1082. supcols = []string{"JSAccessCardNo"}
  1083. }
  1084. svc.UpdateEntityByIdCols(id, &supplier, supcols)
  1085. var cert suppliercert.OilSupplierCert
  1086. certcols := []string{"AccessCardNo"}
  1087. cert.AccessCardNo = accessCardNo
  1088. svc.UpdateEntityByIdCols(certId, &cert, certcols)
  1089. var errinfo ErrorDataInfo
  1090. errinfo.Message = "保存成功!"
  1091. errinfo.Code = 0
  1092. this.Data["json"] = &errinfo
  1093. this.ServeJSON()
  1094. } else {
  1095. var errinfo ErrorDataInfo
  1096. errinfo.Message = "准入编码已经存在!"
  1097. errinfo.Code = -1
  1098. this.Data["json"] = &errinfo
  1099. this.ServeJSON()
  1100. }
  1101. }
  1102. // @Title 快到期短信通知
  1103. // @Description 修改准入标识
  1104. // @Success 200 {object} controllers.Request
  1105. // @router /sendingSMS/ [get]
  1106. func (this *OilSupplierCertController) SendingSMS() {
  1107. t := time.Now()
  1108. svcsupp := supplier.GetOilSupplierService(utils.DBE)
  1109. var list []supplier.OilSupplierView
  1110. where := "b.InFlag = '1'"
  1111. svcsupp.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, 0, 0, "Id", true, &list, where)
  1112. currenttime := time.Now()
  1113. loginName := "TimingTask"
  1114. if this.User != nil {
  1115. loginName = this.User.Username
  1116. }
  1117. for _, item := range list {
  1118. if currenttime.AddDate(0, 3, 0).Format("2006-01-02") == (item.ApplyTime.Format("2006-01-02")) {
  1119. toMobile := item.Mobile
  1120. msg := "您的" + item.SupplierTypeName + "准入还有3个月到期"
  1121. msgService := msg2.GetMsgService(utils.DBE)
  1122. msgService.HandleMsg(toMobile, msg, "1-1", item.CreateBy, item.ContactName, strconv.Itoa(item.CreateUserId), loginName)
  1123. }
  1124. if currenttime.AddDate(0, 2, 0).Format("2006-01-02") == (item.ApplyTime.Format("2006-01-02")) {
  1125. toMobile := item.Mobile
  1126. msg := "您的" + item.SupplierTypeName + "准入还有2个月到期"
  1127. msgService := msg2.GetMsgService(utils.DBE)
  1128. msgService.HandleMsg(toMobile, msg, "1-1", item.CreateBy, item.ContactName, strconv.Itoa(item.CreateUserId), loginName)
  1129. }
  1130. if currenttime.AddDate(0, 1, 0).Format("2006-01-02") == (item.ApplyTime.Format("2006-01-02")) {
  1131. toMobile := item.Mobile
  1132. msg := "您的" + item.SupplierTypeName + "准入还有1个月到期"
  1133. msgService := msg2.GetMsgService(utils.DBE)
  1134. msgService.HandleMsg(toMobile, msg, "1-1", item.CreateBy, item.ContactName, strconv.Itoa(item.CreateUserId), loginName)
  1135. }
  1136. }
  1137. elapsed := time.Since(t)
  1138. fmt.Println(elapsed, "快到期提醒")
  1139. }
  1140. // @Title 资质快到期短信通知
  1141. // @Description
  1142. // @Success 200 {object} controllers.Request
  1143. // @router /sendingSMSSupplierFile/ [get]
  1144. func (this *OilSupplierCertController) SendingSMSSupplierFile() {
  1145. t := time.Now()
  1146. svcsupp := supplier.GetOilSupplierService(utils.DBE)
  1147. var expireFile []supplier.ExpireFile
  1148. where := " b.EffectDate LIKE '%" + time.Now().AddDate(0, 1, 0).Format("2006-01-02") + "%'"
  1149. err := svcsupp.GetExpireFile(OilSupplierName, OilSupplierFileName, &expireFile, where)
  1150. if err == nil {
  1151. for _, item := range expireFile {
  1152. fileName := ""
  1153. if utf8.RuneCountInString(item.NeedAllFile) > 50 {
  1154. fileName = string([]rune(item.NeedAllFile)[0:50])
  1155. fileName = fileName[0:strings.LastIndex(fileName, ";")] + "等资质"
  1156. } else {
  1157. fileName = item.NeedAllFile
  1158. }
  1159. toMobile := item.Mobile
  1160. msg := "您的" + fileName + "还有1个月到期"
  1161. msgService := msg2.GetMsgService(utils.DBE)
  1162. loginName := "TimingTask"
  1163. if this.User != nil {
  1164. loginName = this.User.Username
  1165. }
  1166. msgService.HandleMsg(toMobile, msg, "1-1", item.CreateBy, item.ContactName, strconv.Itoa(item.CreateUserId), loginName)
  1167. }
  1168. }
  1169. elapsed := time.Since(t)
  1170. fmt.Println(elapsed, "资质到期提醒")
  1171. }
  1172. // @Title 资质
  1173. // @Description
  1174. // @Success 200 {object} controllers.Request
  1175. // @router /changeSupplierStatus/ [get]
  1176. func (this *OilSupplierCertController) ChangeSupplierStatus() {
  1177. svcsupp := supplier.GetOilSupplierService(utils.DBE)
  1178. var fileData []supplier.ExpireFileList
  1179. where := " b.EffectDate LIKE '%" + time.Now().AddDate(0, 0, -1).Format("2006-01-02") + "%'"
  1180. svcsupp.GetExpireFileList(OilSupplierName, OilSupplierFileName, &fileData, where)
  1181. for _, item := range fileData {
  1182. var sert suppliercert.OilSupplierCert
  1183. cols := []string{
  1184. "InFlag",
  1185. "Remark",
  1186. }
  1187. sert.InFlag = "2"
  1188. sert.Remark = "资质已到期"
  1189. where := "SupplierId=" + strconv.Itoa(item.Id) + " AND InFlag = '1'"
  1190. if item.SupplierTypeCode != "000" {
  1191. where = where + " and SupplierTypeCode='" + item.SupplierTypeCode + "'"
  1192. }
  1193. svcsupp.UpdateEntityBywheretbl(OilSupplierCertName, &sert, cols, where)
  1194. }
  1195. }
  1196. // @Title 更新Inflag状态
  1197. // @Description 企业入库
  1198. // @Success 200 {object} controllers.Request
  1199. // @router /reinput/:id [post]
  1200. func (this *OilSupplierCertController) ReInput() {
  1201. id := this.Ctx.Input.Param(":id")
  1202. var errinfo ErrorInfo
  1203. if id == "" {
  1204. errinfo.Message = "操作失败!请求信息不完整"
  1205. errinfo.Code = -2
  1206. this.Data["json"] = &errinfo
  1207. this.ServeJSON()
  1208. return
  1209. }
  1210. session := utils.DBE.NewSession()
  1211. svc := suppliercert.GetOilSupplierCertSession(session)
  1212. defer func() {
  1213. session.Close()
  1214. }()
  1215. err := session.Begin()
  1216. var model []suppliercert.Del_OilSupplierCert
  1217. where := "SupplierId=" + id
  1218. var sql string
  1219. sql = "select * from " + OilSupplierCertName + " where " + where
  1220. utils.DBE.SQL(sql).Find(&model)
  1221. isdelsupplier := false
  1222. if model != nil && len(model) > 0 {
  1223. isdelsupplier = true
  1224. }
  1225. for _, item := range model {
  1226. if item.InFlag == "3" {
  1227. where := "Id=" + strconv.Itoa(item.Id)
  1228. err = svc.DeleteEntityBytbl(OilSupplierCertName, where)
  1229. if err != nil {
  1230. session.Rollback()
  1231. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1232. errinfo.Code = -1
  1233. this.Data["json"] = &errinfo
  1234. this.ServeJSON()
  1235. return
  1236. }
  1237. item.DeleteDate = time.Now()
  1238. _, err = svc.InsertEntityBytbl(DelOilSupplierCertName, &item)
  1239. if err != nil {
  1240. session.Rollback()
  1241. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1242. errinfo.Code = -1
  1243. this.Data["json"] = &errinfo
  1244. this.ServeJSON()
  1245. return
  1246. }
  1247. // 交费信息
  1248. var delpay []paymentinfo.Del_OilPaymentInfo
  1249. wherepay := "SupplierCertId=" + strconv.Itoa(model[0].Id)
  1250. var sqlpay string
  1251. sqlpay = "select * from " + OilPaymentInfoName + " where " + wherepay
  1252. utils.DBE.SQL(sqlpay).Find(&delpay)
  1253. err = svc.DeleteEntityBytbl(OilPaymentInfoName, wherepay)
  1254. if err != nil {
  1255. session.Rollback()
  1256. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1257. errinfo.Code = -1
  1258. this.Data["json"] = &errinfo
  1259. this.ServeJSON()
  1260. return
  1261. }
  1262. for idx, _ := range delpay {
  1263. delpay[idx].DeleteDate = time.Now()
  1264. }
  1265. _, err = svc.InsertEntityBytbl(DelOilPaymentInfoName, &delpay)
  1266. if err != nil {
  1267. session.Rollback()
  1268. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1269. errinfo.Code = -1
  1270. this.Data["json"] = &errinfo
  1271. this.ServeJSON()
  1272. return
  1273. }
  1274. // 删除增项记录
  1275. var modelapp []suppliercertappend.Del_OilSupplierCertAppend
  1276. whereapp := "SupplierCertId=" + strconv.Itoa(model[0].Id)
  1277. var sqlapp string
  1278. sqlapp = "select * from " + OilSupplierCertAppendName + " where " + whereapp
  1279. utils.DBE.SQL(sqlapp).Find(&modelapp)
  1280. err = svc.DeleteEntityBytbl(OilSupplierCertAppendName, whereapp)
  1281. if err != nil {
  1282. session.Rollback()
  1283. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1284. errinfo.Code = -1
  1285. this.Data["json"] = &errinfo
  1286. this.ServeJSON()
  1287. return
  1288. }
  1289. for idx, _ := range modelapp {
  1290. modelapp[idx].DeleteDate = time.Now()
  1291. }
  1292. _, err = svc.InsertEntityBytbl(DelOilSupplierCertAppendName, &modelapp)
  1293. if err != nil {
  1294. session.Rollback()
  1295. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1296. errinfo.Code = -1
  1297. this.Data["json"] = &errinfo
  1298. this.ServeJSON()
  1299. return
  1300. }
  1301. // 删除年审记录
  1302. var modelann []annualaudit.Del_OilAnnualAudit
  1303. whereann := "CerId=" + strconv.Itoa(model[0].Id)
  1304. var sqlann string
  1305. sqlann = "select * from " + OilAnnualAuditName + " where " + whereann
  1306. utils.DBE.SQL(sqlann).Find(&modelann)
  1307. err = svc.DeleteEntityBytbl(OilAnnualAuditName, whereann)
  1308. if err != nil {
  1309. session.Rollback()
  1310. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1311. errinfo.Code = -1
  1312. this.Data["json"] = &errinfo
  1313. this.ServeJSON()
  1314. return
  1315. }
  1316. for idx, _ := range modelann {
  1317. modelann[idx].DeleteDate = time.Now()
  1318. }
  1319. _, err = svc.InsertEntityBytbl(DelOilAnnualAuditName, &modelann)
  1320. if err != nil {
  1321. session.Rollback()
  1322. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1323. errinfo.Code = -1
  1324. this.Data["json"] = &errinfo
  1325. this.ServeJSON()
  1326. return
  1327. }
  1328. // 删除准入范围
  1329. var certsup []suppliercertsub.Del_OilSupplierCertSub
  1330. wheresup := "SupplierCertId=" + strconv.Itoa(model[0].Id)
  1331. var sqlsup string
  1332. sqlsup = "select * from " + OilSupplierCertSubName + " where " + wheresup
  1333. utils.DBE.SQL(sqlsup).Find(&certsup)
  1334. err = svc.DeleteEntityBytbl(OilSupplierCertSubName, wheresup)
  1335. if err != nil {
  1336. session.Rollback()
  1337. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1338. errinfo.Code = -1
  1339. this.Data["json"] = &errinfo
  1340. this.ServeJSON()
  1341. return
  1342. }
  1343. for idx, _ := range certsup {
  1344. certsup[idx].DeleteDate = time.Now()
  1345. }
  1346. _, err = svc.InsertEntityBytbl(DelOilSupplierCertSubName, &certsup)
  1347. if err != nil {
  1348. session.Rollback()
  1349. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1350. errinfo.Code = -1
  1351. this.Data["json"] = &errinfo
  1352. this.ServeJSON()
  1353. return
  1354. }
  1355. } else {
  1356. isdelsupplier = false
  1357. }
  1358. }
  1359. if isdelsupplier {
  1360. // 删除企业信息
  1361. var modelsupp supplier.Del_OilSupplier
  1362. where := "Id=" + strconv.Itoa(model[0].SupplierId)
  1363. var sql string
  1364. sql = "select * from " + OilSupplierName + " where " + where
  1365. utils.DBE.SQL(sql).Get(&modelsupp)
  1366. err = svc.DeleteEntityBytbl(OilSupplierName, where)
  1367. if err != nil {
  1368. session.Rollback()
  1369. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1370. errinfo.Code = -1
  1371. this.Data["json"] = &errinfo
  1372. this.ServeJSON()
  1373. return
  1374. }
  1375. modelsupp.DeleteDate = time.Now()
  1376. _, err = svc.InsertEntityBytbl(DelOilSupplierName, &modelsupp)
  1377. if err != nil {
  1378. session.Rollback()
  1379. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1380. errinfo.Code = -1
  1381. this.Data["json"] = &errinfo
  1382. this.ServeJSON()
  1383. return
  1384. }
  1385. // 删除企业资质
  1386. var delfile []supplierfile.Del_OilSupplierFile
  1387. wheref := "SupplierId=" + strconv.Itoa(model[0].SupplierId)
  1388. var sqlw string
  1389. sqlw = "select * from " + OilSupplierFileName + " where " + wheref
  1390. utils.DBE.SQL(sqlw).Find(&delfile)
  1391. err = svc.DeleteEntityBytbl(OilSupplierFileName, wheref)
  1392. if err != nil {
  1393. session.Rollback()
  1394. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1395. errinfo.Code = -1
  1396. this.Data["json"] = &errinfo
  1397. this.ServeJSON()
  1398. return
  1399. }
  1400. for idx, _ := range delfile {
  1401. delfile[idx].DeleteDate = time.Now()
  1402. }
  1403. _, err = svc.InsertEntityBytbl(DelOilSupplierFileName, &delfile)
  1404. if err != nil {
  1405. session.Rollback()
  1406. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1407. errinfo.Code = -1
  1408. this.Data["json"] = &errinfo
  1409. this.ServeJSON()
  1410. return
  1411. }
  1412. // 删除信息变更
  1413. var delinfo []infochange.Del_OilInfoChange
  1414. whereinfo := "SupplierId=" + strconv.Itoa(model[0].SupplierId)
  1415. var sqlinfo string
  1416. sqlinfo = "select * from " + OilInfoChangeName + " where " + whereinfo
  1417. utils.DBE.SQL(sqlinfo).Find(&delinfo)
  1418. err = svc.DeleteEntityBytbl(OilInfoChangeName, whereinfo)
  1419. if err != nil {
  1420. session.Rollback()
  1421. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1422. errinfo.Code = -1
  1423. this.Data["json"] = &errinfo
  1424. this.ServeJSON()
  1425. return
  1426. }
  1427. for idx, _ := range delinfo {
  1428. delinfo[idx].DeleteDate = time.Now()
  1429. }
  1430. _, err = svc.InsertEntityBytbl(DelOilInfoChangeName, &delinfo)
  1431. if err != nil {
  1432. session.Rollback()
  1433. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1434. errinfo.Code = -1
  1435. this.Data["json"] = &errinfo
  1436. this.ServeJSON()
  1437. return
  1438. }
  1439. }
  1440. err = session.Commit()
  1441. if err == nil {
  1442. errinfo.Message = "提交成功!"
  1443. errinfo.Code = 0
  1444. this.Data["json"] = &errinfo
  1445. this.ServeJSON()
  1446. } else {
  1447. errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
  1448. errinfo.Code = -1
  1449. this.Data["json"] = &errinfo
  1450. this.ServeJSON()
  1451. }
  1452. }
  1453. // @Title 修改年审到期时间
  1454. // @Description 修改年审到期时间
  1455. // @Success 200 {object} controllers.Request
  1456. // @router /updateapplytime/:id [post]
  1457. func (this *OilSupplierCertController) UpdateApplyTime() {
  1458. session := utils.DBE.NewSession()
  1459. defer func() {
  1460. session.Close()
  1461. }()
  1462. id := this.Ctx.Input.Param(":id")
  1463. var errinfo ErrorInfo
  1464. if id == "" {
  1465. errinfo.Message = "操作失败!请求信息不完整"
  1466. errinfo.Code = -2
  1467. this.Data["json"] = &errinfo
  1468. this.ServeJSON()
  1469. return
  1470. }
  1471. var model supplierapplytime.OilSupplierApplyTime
  1472. svc := suppliercert.GetOilSupplierCertSession(session)
  1473. var jsonBlob = this.Ctx.Input.RequestBody
  1474. json.Unmarshal(jsonBlob, &model)
  1475. model.CreateOn = time.Now()
  1476. model.CreateBy = this.User.Realname
  1477. model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
  1478. //model.OrganizeId, _ = utils.StrTo(this.User.DepartmentId).Int()
  1479. _, err := svc.InsertEntityBytbl(SupplierApplyTimeName, &model)
  1480. if err != nil {
  1481. session.Rollback()
  1482. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  1483. errinfo.Code = -1
  1484. this.Data["json"] = &errinfo
  1485. this.ServeJSON()
  1486. return
  1487. }
  1488. var modelcert suppliercert.OilSupplierCert
  1489. modelcert.ApplyTime = model.AfterDate
  1490. if model.AfterDate.Unix() < time.Now().Unix() {
  1491. modelcert.InFlag = "2"
  1492. } else {
  1493. modelcert.InFlag = "1"
  1494. }
  1495. var cols = []string{
  1496. "ApplyTime",
  1497. "InFlag",
  1498. }
  1499. err = svc.UpdateEntityBytbl(OilSupplierCertName, id, &modelcert, cols)
  1500. if err != nil {
  1501. session.Rollback()
  1502. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  1503. errinfo.Code = -1
  1504. this.Data["json"] = &errinfo
  1505. this.ServeJSON()
  1506. return
  1507. }
  1508. err = session.Commit()
  1509. if err == nil {
  1510. errinfo.Message = "修改成功!"
  1511. errinfo.Code = 0
  1512. this.Data["json"] = &errinfo
  1513. this.ServeJSON()
  1514. } else {
  1515. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  1516. errinfo.Code = -1
  1517. this.Data["json"] = &errinfo
  1518. this.ServeJSON()
  1519. }
  1520. }
  1521. // @Title 获取列表
  1522. // @Description get user by token
  1523. // @Success 200 {object} []suppliercert.OilSupplierCert
  1524. // @router /getapplytimelist [get]
  1525. func (this *OilSupplierCertController) GetApplyTimeList() {
  1526. SupplierCertId := this.GetString("SupplierCertId")
  1527. var model []supplierapplytime.OilSupplierApplyTime
  1528. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  1529. where := "SupplierCertId = " + SupplierCertId
  1530. svc.GetEntities(&model, where)
  1531. var errinfo ErrorDataInfo
  1532. errinfo.Message = "修改成功!"
  1533. errinfo.Code = 0
  1534. errinfo.Item = model
  1535. this.Data["json"] = &model
  1536. this.ServeJSON()
  1537. }
  1538. // @Title 修改增项是否需要限制 针对企业
  1539. // @Description 修改年审到期时间
  1540. // @Success 200 {object} controllers.Request
  1541. // @router /updateisrestrict/:id [post]
  1542. func (this *OilSupplierCertController) UpdateIsRestrict() {
  1543. id := this.Ctx.Input.Param(":id")
  1544. var errinfo ErrorInfo
  1545. if id == "" {
  1546. errinfo.Message = "操作失败!请求信息不完整"
  1547. errinfo.Code = -2
  1548. this.Data["json"] = &errinfo
  1549. this.ServeJSON()
  1550. return
  1551. }
  1552. isRestrict := this.GetString("IsRestrict")
  1553. var model suppliercert.OilSupplierCert
  1554. svc := suppliercert.GetOilSupplierCertService(utils.DBE)
  1555. cols := []string{
  1556. "IsRestrict",
  1557. }
  1558. model.IsRestrict, _ = strconv.Atoi(isRestrict)
  1559. err := svc.UpdateEntityBytbl(OilSupplierCertName, id, &model, cols)
  1560. if err == nil {
  1561. errinfo.Message = "修改成功!"
  1562. errinfo.Code = 0
  1563. this.Data["json"] = &errinfo
  1564. this.ServeJSON()
  1565. } else {
  1566. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  1567. errinfo.Code = -1
  1568. this.Data["json"] = &errinfo
  1569. this.ServeJSON()
  1570. }
  1571. }