| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077 |
- package oilsupplier
- import (
- "dashoo.cn/backend/api/business/audithistory"
- "dashoo.cn/backend/api/business/baseUser"
- msg2 "dashoo.cn/backend/api/business/msg"
- "dashoo.cn/backend/api/business/oilsupplier/infochange"
- "dashoo.cn/backend/api/business/oilsupplier/oilcostmanage"
- "dashoo.cn/backend/api/business/oilsupplier/qualchange"
- "dashoo.cn/backend/api/business/oilsupplier/suppliercert"
- "dashoo.cn/backend/api/business/oilsupplier/suppliercertappend"
- "dashoo.cn/backend/api/business/oilsupplier/supplierfile"
- "dashoo.cn/backend/api/business/oilsupplier/supplierlog"
- "dashoo.cn/backend/api/business/oilsupplier/tableheader"
- "dashoo.cn/backend/api/business/organize"
- "dashoo.cn/backend/api/business/paymentinfo"
- "dashoo.cn/backend/api/business/register"
- "dashoo.cn/business2/areajson"
- "dashoo.cn/business2/items"
- "dashoo.cn/business2/permission"
- "dashoo.cn/business3/parameter"
- "log"
- "reflect"
- "encoding/json"
- "fmt"
- "strconv"
- "strings"
- "time"
- "dashoo.cn/backend/api/business/auditsetting"
- "dashoo.cn/backend/api/business/oilsupplier/annualaudit"
- "dashoo.cn/backend/api/business/oilsupplier/supplier"
- "dashoo.cn/backend/api/business/workflow"
- "dashoo.cn/business2/userRole"
- . "dashoo.cn/backend/api/controllers"
- "dashoo.cn/utils"
- )
- type AnnualAuditController struct {
- BaseController
- }
- type ShenHeModel struct {
- AnnualId int
- SuccessStatus int
- AuditorRemark string
- }
- type ComShenHeModel struct {
- SupplierId int
- SupplierTypeName string
- Remark string
- }
- // @Title 获取列表
- // @Description get user by token
- // @Success 200 {object} []annualaudit.OilAnnualAudit
- // @router /list [get]
- func (this *AnnualAuditController) GetEntityList() {
- //获取分页信息
- page := this.GetPageInfoForm()
- where := " b.Id is not null "
- orderby := "b.Id"
- asc := false
- Order := this.GetString("Order")
- Prop := this.GetString("Prop")
- if Order != "" && Prop != "" {
- orderby = Prop
- if Order == "asc" {
- asc = true
- }
- }
- if orderby == "SupplierName" {
- orderby = "a.SupplierName"
- }
- SupplierTypeName := this.GetString("SupplierTypeName")
- RecUnitId := this.GetString("RecUnitId")
- AccessCardNo := this.GetString("AccessCardNo")
- SupplierName := this.GetString("SupplierName")
- CreateOn := this.GetString("CreateOn")
- if SupplierTypeName != "" {
- where = where + " and b.SupplierTypeName like '%" + SupplierTypeName + "%'"
- }
- if RecUnitId != "" {
- where = where + " and b.RecUnitId like '%" + RecUnitId + "%'"
- }
- if AccessCardNo != "" {
- where = where + " and b.AccessCardNo like '%" + AccessCardNo + "%'"
- }
- if SupplierName != "" {
- where = where + " and b.SupplierName like '%" + SupplierName + "%'"
- }
- if CreateOn != "" {
- dates := strings.Split(CreateOn, ",")
- if len(dates) == 2 {
- minDate := dates[0]
- maxDate := dates[1]
- where = where + " and b.CreateOn>='" + minDate + "' and b.CreateOn<='" + maxDate + "'"
- }
- }
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var registerUser register.OilCorporateInfo
- // TODO 这里应该从主表取企业信息,增项 年审和信息变更可能会改变企业信用代码(或者在申请通过后同步更新注册表)
- sql := " UserName='" + this.User.Username + "' and CheckStatus = 11 "
- svc.GetEntity(®isterUser, sql)
- //企业用户必须加创建人条件
- if this.User.IsCompanyUser == 1 {
- where = where + " and (b.CreateUserId = '" + this.User.Id + "' or a.CommercialNo='" + registerUser.CommercialNo + "')"
- } else {
- //超级管理员和有查看所有数据权限的用户不加条件
- svcPerm := permission.GetPermissionService(utils.DBE)
- isauth := svcPerm.IsAuthorized(this.User.Id, "oil_supplier.annual.AllRecord")
- if !svcPerm.IsAdmin(this.User.Id) && !isauth {
- where = where + " and (b.CreateUserId = '" + this.User.Id + "' or a.CommercialNo='" + registerUser.CommercialNo + "')"
- }
- }
- var list []annualaudit.OilAnnualAudit
- //total := svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, asc, &list, where)
- total := svc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilAnnualAuditName, page.CurrentPage, page.Size, orderby, asc, &list, where)
- var datainfo DataInfo
- datainfo.Items = list
- datainfo.CurrentItemCount = total
- datainfo.PageIndex = page.CurrentPage
- datainfo.ItemsPerPage = page.Size
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- // @Title 获取审批列表
- // @Description get user by token
- // @Success 200 {object} []annualaudit.OilAnnualAudit
- // @router /mytasks [get]
- func (this *AnnualAuditController) GetMyTaskEntityList() {
- //获取分页信息
- page := this.GetPageInfoForm()
- where := " 1=1 "
- orderby := "Id"
- asc := false
- Order := this.GetString("Order")
- Prop := this.GetString("Prop")
- if Order != "" && Prop != "" {
- orderby = Prop
- if Order == "asc" {
- asc = true
- }
- }
- SupplierTypeName := this.GetString("SupplierTypeName")
- RecUnitId := this.GetString("RecUnitId")
- AccessCardNo := this.GetString("AccessCardNo")
- SupplierName := this.GetString("SupplierName")
- CreateOn := this.GetString("CreateOn")
- if SupplierTypeName != "" {
- where = where + " and SupplierTypeName like '%" + SupplierTypeName + "%'"
- }
- if RecUnitId != "" {
- where = where + " and RecUnitId like '%" + RecUnitId + "%'"
- }
- if AccessCardNo != "" {
- where = where + " and AccessCardNo like '%" + AccessCardNo + "%'"
- }
- if SupplierName != "" {
- where = where + " and SupplierName like '%" + SupplierName + "%'"
- }
- if CreateOn != "" {
- dates := strings.Split(CreateOn, ",")
- if len(dates) == 2 {
- minDate := dates[0]
- maxDate := dates[1]
- where = where + " and CreateOn>='" + minDate + "' and CreateOn<='" + maxDate + "'"
- }
- }
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var list []annualaudit.OilAnnualAudit
- //找出待办任务
- actisvc := workflow.GetActivitiService(utils.DBE)
- certIdList := actisvc.GetMyTasks(workflow.OIL_AUDIT_APPLY, this.User.Id)
- annuIdarr := strings.Split(certIdList, ",")
- for i, item := range annuIdarr {
- idx := strings.Index(item, "-")
- if idx >= 0 {
- annuIdarr[i] = strings.Split(item, "-")[0]
- }
- }
- certIdList = strings.Join(annuIdarr, ",")
- var total int64 = 0
- if certIdList != "" {
- where += " and Id in (" + certIdList + ")"
- //根据部门查询待办任务
- where += " and Status > 0 "
- total = svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, asc, &list, where)
- //total := svc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, page.CurrentPage, page.Size, orderby, asc, &list, where)
- }
- var datainfo DataInfo
- datainfo.Items = list
- datainfo.CurrentItemCount = total
- datainfo.PageIndex = page.CurrentPage
- datainfo.ItemsPerPage = page.Size
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- // @Title 获取年审企业名称
- // @Description 获取实体
- // @Success 200 {object} annualaudit.OilAnnualAudit
- // @router /supplierlist [get]
- func (this *AnnualAuditController) GetSupplierList() {
- code := this.GetString("code")
- svc := infochange.GetInfoChangeService(utils.DBE)
- var supplierlist []annualaudit.Suppliername
- where := "1=1"
- //企业用户必须加创建人条件
- if this.User.IsCompanyUser == 1 {
- where = where + " and a.CreateUserId = '" + this.User.Id + "'"
- }
- //else {
- // //超级管理员和有查看所有数据权限的用户不加条件
- // svcPerm := permission.GetPermissionService(utils.DBE)
- // isauth := svcPerm.IsAuthorized(this.User.Id, "oil_supplier.marketAccess.AllRecord")
- // if !svcPerm.IsAdmin(this.User.Id) && !isauth {
- // where = where + " and a.CreateUserId = '" + this.User.Id + "'"
- // }
- //}
- if code != "" {
- where = where + " and b.SupplierTypeCode='" + code + "' "
- }
- where = where + " and b.Status='" + suppliercert.STORE_STATUS + "' "
- supplierlist = svc.GetSupplierList(""+OilSupplierName, where)
- var datainfo DataInfo
- datainfo.Items = supplierlist
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- // @Title 获取字典列表
- // @Description get user by token
- // @Success 200 {object} map[string]interface{}
- // @router /dictlist [get]
- func (this *AnnualAuditController) GetDictList() {
- dictList := make(map[string]interface{})
- dictSvc := items.GetItemsService(utils.DBE)
- userSvc := baseUser.GetBaseUserService(utils.DBE)
- areaJsonSvc := areajson.GetAreaJsonService(utils.DBE)
- //customerSvc := svccustomer.GetCustomerService(utils.DBE)
- dictList["UnitRelation"] = dictSvc.GetKeyValueItems("UnitRelation")
- dictList["CompanyType"] = dictSvc.GetKeyValueItems("CompanyType")
- var userEntity userRole.Base_User
- userSvc.GetEntityById(this.User.Id, &userEntity)
- dictList["Supervisers"] = userSvc.GetUserListByDepartmentId(this.User.AccCode, userEntity.Departmentid)
- dictList["GaodeMapChinaAreas"] = areaJsonSvc.GetGaodeMapChinaAreas()
- //获取我创建的所有公司
- var list []supplier.OilSupplier
- if this.User.IsCompanyUser == 1 {
- svcSupplier := supplier.GetOilSupplierService(utils.DBE)
- supplierWhere := " CreateUserId = '" + this.User.Id + "'"
- svcSupplier.GetEntitysByWhere(OilSupplierName, supplierWhere, &list)
- dictList["CompanyNames"] = list
- } else { //二级单位不用获取
- dictList["CompanyNames"] = list
- }
- // 部门
- orgsvc := organize.GetOrganizeService(utils.DBE)
- dictList["Organizes"] = orgsvc.GetCollectionDetailviewlist("'" + this.User.AccCode + "'")
- //获得有专业审核接收权限的人员
- var users1 []userRole.Base_RoleList
- var auditWorkflow1 auditsetting.Base_OilAuditSetting
- rsvc := auditsetting.GetOilAuditSettingService(utils.DBE)
- rsvc.GetAuditStepRoleEntity(OilAuditSettingName, "100000172", workflow.PROF_RECE, &auditWorkflow1)
- users1 = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow1.RoleId), "")
- dictList["Receive"] = users1
- //获得有专业审核权限的人员
- var users []userRole.Base_RoleList
- var auditWorkflow auditsetting.Base_OilAuditSetting
- rsvc.GetAuditStepRoleEntity(OilAuditSettingName, "100000172", workflow.PROF_AUDIT, &auditWorkflow)
- users = rsvc.GetUserByRole(strconv.Itoa(auditWorkflow.RoleId), "")
- dictList["ProfAudit"] = users
- var datainfo DataInfo
- datainfo.Items = dictList
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- // @Title 获取实体
- // @Description 获取实体
- // @Success 200 {object} annualaudit.OilAnnualAudit
- // @router /get/:id [get]
- func (this *AnnualAuditController) GetEntity() {
- Id := this.Ctx.Input.Param(":id")
- var model annualaudit.OilAnnualAudit
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- svc.GetEntityByIdBytbl(""+OilAnnualAuditName, Id, &model)
- this.Data["json"] = &model
- this.ServeJSON()
- }
- // @Title 获取公司信息
- // @Description 根据创建用户Id和增项类别号获取公司信息
- // @Success 200 {object}
- // @router /getsupplier [get]
- func (this *AnnualAuditController) GetSupplier() {
- SuppTypeCode := this.GetString("SuppTypeCode")
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- where := "1=1 "
- if SuppTypeCode != "" {
- where = " WHERE b.Id is NOT NULL AND a.SupplierTypeCode = '" + SuppTypeCode + "' and (a.InFlag='1' or a.InFlag='2')"
- } else {
- where = " WHERE b.Id is NOT NULL AND (a.InFlag='1' or a.InFlag='2')"
- }
- var registerUser register.OilCorporateInfo
- sql := " UserName='" + this.User.Username + "' and CheckStatus = 11 "
- svc.GetEntity(®isterUser, sql)
- //企业用户必须加创建人条件
- if this.User.IsCompanyUser == 1 {
- where = where + " and (b.CreateUserId = '" + this.User.Id + "' or b.CommercialNo='" + registerUser.CommercialNo + "')"
- //if this.User.IsCompanyUser == 1 {
- // where = where + " and b.CreateUserId = '" + this.User.Id + "'"
- }
- sqlStr := "SELECT b.Id AS SupplierId, a.Id AS SupplierCertId, b.SupplierName AS SupplierName FROM OilSupplierCert a LEFT JOIN OilSupplier b ON a.SupplierId = b.Id "
- sqlStr = sqlStr + where
- model, _ := svc.DBE.QueryString(sqlStr)
- this.Data["json"] = &model
- this.ServeJSON()
- }
- // @Title 获取公司信息(信息变更专用)
- // @Description 根据创建用户Id和增项类别号获取公司信息
- // @Success 200 {object}
- // @router /getsupplierforchange [get]
- func (this *AnnualAuditController) GetSupplierForChange() {
- SuppTypeCode := this.GetString("SuppTypeCode")
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- where := "1=1 "
- if SuppTypeCode != "" {
- where = " WHERE b.Id is NOT NULL AND a.SupplierTypeCode = '" + SuppTypeCode + "' and (a.InFlag='1' or a.InFlag='2' or a.Status='8')"
- } else {
- where = " WHERE b.Id is NOT NULL AND (a.InFlag='1' or a.InFlag='2' or a.Status='8')"
- }
- var registerUser register.OilCorporateInfo
- sql := " UserName='" + this.User.Username + "' and CheckStatus = 11 "
- svc.GetEntity(®isterUser, sql)
- //企业用户必须加创建人条件
- if this.User.IsCompanyUser == 1 {
- where = where + " and (b.CreateUserId = '" + this.User.Id + "' or b.CommercialNo='" + registerUser.CommercialNo + "')"
- //if this.User.IsCompanyUser == 1 {
- // where = where + " and b.CreateUserId = '" + this.User.Id + "'"
- }
- sqlStr := "SELECT b.Id AS SupplierId, a.Id AS SupplierCertId, b.SupplierName AS SupplierName FROM OilSupplierCert a LEFT JOIN OilSupplier b ON a.SupplierId = b.Id "
- sqlStr = sqlStr + where
- model, _ := svc.DBE.QueryString(sqlStr)
- this.Data["json"] = &model
- this.ServeJSON()
- }
- // @Title 添加
- // @Description 直接新增年审
- // @Success 200 {object} controllers.Request
- // @router /adddirect [post]
- func (this *AnnualAuditController) AddEntityDirect() {
- var model annualaudit.OilAnnualAudit
- var errInfo ErrorDataInfo
- var jsonBlob = this.Ctx.Input.RequestBody
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- json.Unmarshal(jsonBlob, &model)
- supWhere := "a.Id = " + utils.ToStr(model.SupplierId) + " and b.SupplierTypeCode = '" + model.SupplierTypeName + "' and b.Status = '8' "
- supSvc := supplier.GetOilSupplierService(utils.DBE)
- var list []supplier.OilSupplierView
- supSvc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, 1, 1, "a.Id", true, &list, supWhere)
- var supplierModel supplier.OilSupplierView
- supplierModel = list[0]
- model.AccessCardNo = supplierModel.AccessCardNo
- model.RecUnitId = supplierModel.RecUnitId
- model.CerId, _ = strconv.Atoi(supplierModel.CertId)
- model.ApplyTime = supplierModel.ApplyTime
- model.Status = "0"
- model.Step = 1
- model.BackReason = supplierModel.BackReason
- model.CreateOn = time.Now()
- model.CreateBy = this.User.Realname
- model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- //添加一条年审记录
- _, err := svc.InsertEntityBytbl(""+OilAnnualAuditName, &model)
- if err == nil {
- //新增
- errInfo.Message = "添加成功!"
- errInfo.Code = 0
- errInfo.Item = model.Id
- this.Data["json"] = &errInfo
- this.ServeJSON()
- } else {
- errInfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
- errInfo.Code = -1
- this.Data["json"] = &errInfo
- this.ServeJSON()
- }
- }
- // @Title 修改实体
- // @Description 修改实体
- // @Success 200 {object} controllers.Request
- // @router /suppupdate/:id/:type/:instyle [post]
- func (this *AnnualAuditController) UpdateSuppEntity() {
- id := this.Ctx.Input.Param(":id")
- typeCode := this.Ctx.Input.Param(":type")
- instyle := this.Ctx.Input.Param(":instyle")
- var errinfo ErrorInfo
- if id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- var model supplier.OilSupplier
- var jsonBlob = this.Ctx.Input.RequestBody
- json.Unmarshal(jsonBlob, &model)
- var list []supplier.OilSupplierView
- service := supplier.GetOilSupplierService(utils.DBE)
- service.CheckUpdateRepeatApplyInfo(OilSupplierName, OilSupplierCertName, typeCode, strconv.Itoa(model.Id), model.SupplierName, model.CommercialNo, model.OrganCode, model.BankAccount, model.CompanyUrl, &list)
- if len(list) > 0 {
- errinfo.Message = "修改失败! 已存在相关企业的信息,或与其他企业信息重复"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- svc := supplier.GetOilSupplierService(utils.DBE)
- model.ModifiedOn = time.Now()
- model.ModifiedBy = this.User.Realname
- model.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
- //判断基本信息是否可修改
- //updateCols := svc.GetUpdateCols(OilSupplierCertName, typeCode, model.Id)
- updateCols := []string{
- "SupplierName",
- "OilCertificateNo",
- "Grade",
- "MgrUnit",
- "OperType",
- "Country",
- "MaunAgent",
- "ConstructTeam",
- "CommercialNo",
- "OrganCode",
- "CountryTaxNo",
- "LocalTaxNo",
- "Address",
- "Province",
- "City",
- "Street",
- "HouseNo",
- "ZipCode",
- "QualitySystemCert",
- "ProductQualityCert",
- "MaunLicense",
- "QualifCert",
- "QualifCertLevel",
- "SafetyLicense",
- "TechServiceLic",
- "TJInNotify",
- "SpecIndustryCert",
- "LegalPerson",
- "CategoryCode",
- "CategoryName",
- "RegCapital",
- "Currency",
- "ContactName",
- "CompanyType",
- "SetupTime",
- "DepositBank",
- "BankAccount",
- "EMail",
- "BusinessScope",
- "BankCreditRating",
- "Mobile",
- "Telphone",
- "Fax",
- "CompanyTel",
- "QQ",
- "CompanyUrl",
- "SpecSupplier",
- "SpecTypeCode",
- "SpecTypeName",
- /*"WorkerTotal",
- "ContractNum ",
- "UniversityNum",
- "TechnicalNum",
- "AboveProfNum",
- "MiddleProfNum",
- "NationalRegNum",
- "NationalCertTotal",
- "DesignerTotal",
- "SkillerTotal",*/
- "Remark",
- "IsDelete",
- "CreateOn",
- "CreateUserId",
- "CreateBy",
- "ModifiedOn",
- "ModifiedUserId",
- "ModifiedBy",
- "LinkAddress",
- "LinkProvince",
- "LinkCity",
- "LinkStreet",
- "LinkHouseNo",
- "LinkZipCode",
- "HseTraining",
- "CredentialFlag",
- "SupplierCertificate",
- "PACNumber",
- }
- err := svc.UpdateEntityBytbl(OilSupplierName, id, &model, updateCols)
- if err == nil {
- if instyle != "" {
- svc.DBE.Exec("update OilSupplierCert set Instyle=" + instyle + " where SupplierId=" + id + " and SupplierTypeCode=" + typeCode + "")
- }
- errinfo.Message = "修改成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 添加
- // @Description 新增年审
- // @Success 200 {object} controllers.Request
- // @router /add [post]
- func (this *AnnualAuditController) AddEntity() {
- var model annualaudit.OilAnnualAudit
- var errInfo ErrorDataInfo
- var jsonBlob = this.Ctx.Input.RequestBody
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- //firstAudit := this.GetString("firstAudit")
- json.Unmarshal(jsonBlob, &model)
- where := "SupplierId = " + utils.ToStr(model.SupplierId) + " and SupplierTypeName = " + model.SupplierTypeName + " and (Status < 8 or Status in ('9','10'))"
- var auditEntity []annualaudit.OilAnnualAudit
- svc.GetEntitysByWhere(""+OilAnnualAuditName, where, &auditEntity)
- if len(auditEntity) >= 1 {
- errInfo.Message = "今年已提交年审,请勿重复提交!"
- errInfo.Code = -1
- this.Data["json"] = &errInfo
- this.ServeJSON()
- return
- }
- supWhere := "a.Id = " + utils.ToStr(model.SupplierId) + " and b.SupplierTypeCode = '" + model.SupplierTypeName + "' and (b.Status = '8' or b.Status = '11' "
- supSvc := supplier.GetOilSupplierService(utils.DBE)
- var list []supplier.OilSupplierView
- total := supSvc.GetMyPagingEntitiesWithOrderBytbl(OilSupplierName, OilSupplierCertName, 1, 1, "a.Id", true, &list, supWhere)
- if total == 0 {
- //errInfo.Message = "请先提交准入申请再提交年审!"
- errInfo.Message = "请先提交准入,准入申请通过后,才可申请年审!"
- errInfo.Code = -1
- this.Data["json"] = &errInfo
- this.ServeJSON()
- return
- }
- var supplierModel supplier.OilSupplierView
- supplierModel = list[0]
- if supplierModel.InFlag == "3" {
- errInfo.Message = "超过两年未年审,您已无法提交!"
- errInfo.Code = -1
- this.Data["json"] = &errInfo
- this.ServeJSON()
- return
- }
- applyTime := supplierModel.ApplyTime
- subTime := this.getTimeSub(applyTime, time.Now())
- leftTime := subTime - 3
- if subTime > 3 {
- errInfo.Message = "还不到年审时间!请" + utils.ToStr(leftTime) + "个月后再来申请"
- errInfo.Code = -3
- this.Data["json"] = &errInfo
- this.ServeJSON()
- return
- }
- model.AccessCardNo = supplierModel.AccessCardNo
- model.RecUnitId = supplierModel.RecUnitId
- model.CerId, _ = strconv.Atoi(supplierModel.CertId)
- model.ApplyTime = supplierModel.ApplyTime
- model.Status = "0"
- model.Step = 1
- model.BackReason = supplierModel.BackReason
- model.CreateOn = time.Now()
- model.CreateBy = this.User.Realname
- model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- //添加一条年审记录
- _, err := svc.InsertEntityBytbl(""+OilAnnualAuditName, &model)
- if err == nil {
- //新增
- errInfo.Message = "添加成功!"
- errInfo.Code = 0
- errInfo.Item = model.Id
- this.Data["json"] = &errInfo
- this.ServeJSON()
- } else {
- errInfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
- errInfo.Code = -1
- this.Data["json"] = &errInfo
- this.ServeJSON()
- }
- }
- func (this *AnnualAuditController) getTimeSub(t1, t2 time.Time) int {
- t1 = time.Date(t1.Year(), t1.Month(), t1.Day(), 0, 0, 0, 0, time.Local)
- t2 = time.Date(t2.Year(), t2.Month(), t2.Day(), 0, 0, 0, 0, time.Local)
- return int(t1.Sub(t2).Hours() / 24 / 30)
- }
- // @Title 提交审批
- // @Description 提交审批
- // @Success 200 {object} controllers.Request
- // @router /addauditcomm [post]
- func (this *AnnualAuditController) AddAuditEntity() {
- var model ComShenHeModel
- var errinfo ErrorDataInfo
- var jsonBlob = this.Ctx.Input.RequestBody
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- annualId := this.GetString("AnnualId")
- firstAudit := this.GetString("FirstAuditName")
- secondAudit := this.GetString("SecondAudit")
- thirdAudit := this.GetString("ThirdAudit")
- json.Unmarshal(jsonBlob, &model)
- var setting auditsetting.Base_OilAuditSetting
- var userlist []userRole.Base_User
- usvc := userRole.GetUserService(utils.DBE)
- where := ""
- if this.User.IsCompanyUser == 1 {
- if model.SupplierTypeName == "01" {
- where = "AuditStepCode='" + workflow.SUB_OFFICE_WZ + "'"
- } else if model.SupplierTypeName == "02" {
- where = "AuditStepCode='" + workflow.SUB_OFFICE_JS + "'"
- } else if model.SupplierTypeName == "03" {
- where = "AuditStepCode='" + workflow.SUB_OFFICE_JF + "'"
- }
- usvc.GetEntity(&setting, where)
- ids := usvc.GetUserIdsByRoleId(strconv.Itoa(setting.RoleId))
- tempstr := strings.Join(ids, ",")
- uids := strings.Replace(tempstr, "uid_", "", -1)
- uids = strings.Trim(uids, ",")
- if uids != "" {
- where := "Id in (" + uids + ")" + " and UnitId=" + firstAudit
- usvc.GetEntities(&userlist, where)
- }
- userIds := ""
- for _, tmpUser := range userlist {
- userIds += strconv.Itoa(tmpUser.Id) + ","
- }
- firstAudit = strings.Trim(userIds, ",")
- }
- //where := "CerId = " + utils.ToStr(model.SupplierId) + " and SupplierTypeName = " + model.SupplierTypeName
- var auditentity annualaudit.OilAnnualAudit
- svc.GetEntityById(annualId, &auditentity)
- historworkflowid := auditentity.WorkflowId
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- statusint, _ := strconv.Atoi(auditentity.Status)
- var ActiComplete workflow.ActiCompleteVM
- var auditmodel annualaudit.OilAnnualAudit
- result := strconv.Itoa(this.User.IsCompanyUser)
- //重新工作流
- if statusint < 0 {
- businessKey := utils.ToStr(annualId) + "-" + strconv.Itoa(auditentity.AuditIndex)
- processInstanceId := svcActiviti.StartProcess2(workflow.OIL_AUDIT_APPLY, businessKey, this.User.Id, result, auditentity.SupplierTypeName, auditentity.SupplierName)
- ActiComplete.BusinessKey = businessKey
- auditmodel.WorkflowId = processInstanceId
- auditmodel.BusinessKey = businessKey
- } else {
- auditmodel.WorkflowId = auditentity.WorkflowId
- ActiComplete.BusinessKey = auditentity.BusinessKey
- auditmodel.BusinessKey = auditentity.BusinessKey
- }
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.UserNames = firstAudit
- ActiComplete.UserId = this.User.Id
- ActiComplete.Result = result
- ActiComplete.Remarks = model.Remark
- ActiComplete.CallbackUrl = ""
- //提交给二级单位初审
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if statusint < 0 {
- // 存储审批历史
- var audithistoryentity audithistory.Base_AuditHistory
- audithistoryentity.EntityId, _ = strconv.Atoi(annualId)
- audithistoryentity.WorkflowId = historworkflowid
- audithistoryentity.Process = workflow.OIL_AUDIT_APPLY
- audithistoryentity.BusinessKey = auditentity.BusinessKey
- audithistoryentity.Type = model.SupplierTypeName
- audithistoryentity.BackStep = utils.ToStr(auditentity.Status)
- audithistoryentity.Index = auditentity.AuditIndex
- audithistoryentity.CreateOn = time.Now()
- audithistoryentity.CreateBy = this.User.Realname
- audithistoryentity.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- svc.InsertEntity(audithistoryentity)
- }
- if this.User.IsCompanyUser == 1 {
- auditmodel.Status = suppliercert.FEN_TRIAL_STATUS //二级单位分办
- } else {
- auditmodel.Status = suppliercert.FIRST_TRIAL_STATUS
- }
- auditmodel.FenbanAudit, _ = strconv.Atoi(firstAudit)
- auditmodel.FirstAudit, _ = strconv.Atoi(firstAudit)
- auditmodel.SecondAudit, _ = strconv.Atoi(secondAudit)
- auditmodel.ThirdAudit, _ = strconv.Atoi(thirdAudit)
- cols := []string{
- "Id",
- "WorkflowId",
- "FenbanAudit",
- "FirstAudit",
- "SecondAudit",
- "ThirdAudit",
- "Status",
- "BusinessKey",
- }
- if receiveVal == "true" {
- _, err := svc.UpdateEntityByIdCols(annualId, auditmodel, cols)
- if err == nil {
- //新增
- errinfo.Message = "提交成功!"
- errinfo.Code = 0
- errinfo.Item = auditmodel.Status
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "提交失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- } else {
- errinfo.Message = "工作流异常,请联系管理员!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 企业用户提交按钮 --启动工作流
- // @Description 企业用户提交按钮
- // @Success 200 {object} controllers.Request
- // @router /company-audit/:id [post]
- func (this *AnnualAuditController) CompanyAuditEntity() {
- annualId := this.Ctx.Input.Param(":id")
- unitId := this.GetString("UnitId")
- // typeCode := this.GetString("TypeCode")
- AuditRemark := this.GetString("AuditRemark")
- var errinfo ErrorDataInfo
- defer func() { //finally处理失败的异常
- if err := recover(); err != nil {
- errinfo.Message = err.(string)
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- //返回正确结果
- errinfo.Message = "提交成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }()
- if this.User.IsCompanyUser == 0 {
- // 0二级单位; 1企业用户
- panic("非企业用户,请用分办功能提交!")
- }
- //取出准入申请表
- srv := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var annualEntity annualaudit.OilAnnualAudit
- srv.GetEntityById(annualId, &annualEntity)
- //srv.IsSupplierCertCanSubmit(strconv.Itoa(supplierCertEntity.Id), certId) TODO 参数检查
- if this.User.Realname != annualEntity.CreateBy {
- panic("请联系申请创建人:" + annualEntity.CreateBy + " 予以提交,或删除该申请后重新创建再提交!")
- }
- //取出企业主表
- supplierSvc := supplier.GetOilSupplierService(utils.DBE)
- var supplierEntity supplier.OilSupplier
- //检查是否可提交
- supplierSvc.GetEntityById(annualEntity.SupplierId, &supplierEntity)
- status, _ := strconv.Atoi(annualEntity.Status)
- if status > 0 {
- panic("工作流已经启动,请刷新重试!")
- }
- supplierCertSrv := suppliercert.GetOilSupplierCertService(utils.DBE)
- var supplierCertEntity suppliercert.OilSupplierCert
- supplierCertSrv.GetEntityById(annualEntity.CerId, &supplierCertEntity)
- stepCode := workflow.GetWorkFlowStepCode(supplierCertEntity.SupplierTypeCode) // TODO 年审的准入方式
- auditSettingService := auditsetting.GetOilAuditSettingService(utils.DBE)
- approverIds := auditSettingService.GetApproverIdsByStepCodeAndUnitId(stepCode, unitId)
- if approverIds == "" {
- panic("该分办单位未配置审批人")
- }
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- //启动工作流
- businessKey := annualEntity.BusinessKey
- processInstanceId := annualEntity.WorkflowId
- // 如果被驳回,不再新启工作流
- if processInstanceId == "" {
- businessKey = annualId + "-" + strconv.Itoa(annualEntity.AuditIndex)
- processInstanceId = svcActiviti.StartProcess2(workflow.OIL_AUDIT_APPLY, businessKey, this.User.Id, "1", annualEntity.SupplierTypeName, supplierEntity.SupplierName)
- if len(processInstanceId) <= 0 {
- panic("工作流启动失败!")
- }
- annualEntity.AuditIndex += 1
- }
- // 将启动和工作流,选择的初审和复审人员保存下来
- cols := []string{
- "Id",
- "WorkflowId",
- "BusinessKey",
- "ProcessKey",
- "CommitComId",
- "AuditIndex",
- }
- annualEntity.ProcessKey = workflow.OIL_AUDIT_APPLY
- annualEntity.BusinessKey = businessKey
- annualEntity.WorkflowId = processInstanceId
- annualEntity.CommitComId = unitId
- srv.UpdateEntityByIdCols(annualId, annualEntity, cols)
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = businessKey
- ActiComplete.UserId = this.User.Id
- ActiComplete.Result = "1" //提交给二级单位分办
- ActiComplete.Remarks = AuditRemark
- ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal != "true" {
- log.Println("工作流异常, 业务ID:"+annualEntity.BusinessKey+", 流程ID:"+annualEntity.WorkflowId, " 工作流传参: ", ActiComplete, receiveVal)
- panic("任务已审批,请刷新!")
- }
- // 入库成功 记录快照
- supplierLogService := supplierlog.GetSupplierLogService(utils.DBE)
- sourceId, _ := strconv.Atoi(annualId)
- supplierLogService.SaveSupplierLogForAnnual(annualEntity.SupplierId, sourceId) // 年审
- }
- // @Title 二级单位分办提交审批
- // @Description 提交审批
- // @Success 200 {object} controllers.Request
- // @router /unit-audit/:id [post]
- func (this *AnnualAuditController) SeparateUnitSubmitAuditEntity() {
- annualId := this.Ctx.Input.Param(":id")
- firstAudit := this.GetString("firstAudit")
- secondAudit := this.GetString("SecondAudit")
- auditRemark := this.GetString("AuditRemark")
- userId := this.User.Id
- var baseUserInfo userRole.Base_User
- userService := userRole.GetUserService(utils.DBE)
- userService.GetEntityById(userId, &baseUserInfo)
- unitId := baseUserInfo.UnitId
- var errinfo ErrorDataInfo
- defer func() { //finally处理失败的异常
- if err := recover(); err != nil {
- errinfo.Message = err.(string)
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- //返回正确结果
- errinfo.Message = "审核提交成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }()
- if firstAudit == "" || secondAudit == "" {
- panic("请选择审批人")
- }
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var auditEntity annualaudit.OilAnnualAudit
- svc.GetEntityById(annualId, &auditEntity)
- var supplierEntity supplier.OilSupplier
- svc.GetEntityById(auditEntity.SupplierId, &supplierEntity)
- if this.User.Realname != auditEntity.CreateBy {
- panic("请联系申请创建人:" + auditEntity.CreateBy + " 予以提交,或删除该申请后重新创建再提交!")
- }
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- //启动工作流
- businessKey := auditEntity.BusinessKey
- processInstanceId := auditEntity.WorkflowId
- // 如果被驳回,不再新启工作流
- if processInstanceId == "" {
- businessKey = annualId + "-" + strconv.Itoa(auditEntity.AuditIndex)
- processInstanceId = svcActiviti.StartProcess2(workflow.OIL_AUDIT_APPLY, businessKey, this.User.Id, "1", auditEntity.SupplierTypeName, supplierEntity.SupplierName)
- if len(processInstanceId) <= 0 {
- panic("工作流启动失败!")
- }
- auditEntity.AuditIndex += 1
- }
- // 将启动和工作流,选择的初审和复审人员保存下来
- cols := []string{
- "Id",
- "FirstAudit",
- "SecondAudit",
- "WorkflowId",
- "BusinessKey",
- "ProcessKey",
- "CommitComId",
- "AuditIndex",
- }
- auditEntity.ProcessKey = workflow.OIL_AUDIT_APPLY
- auditEntity.BusinessKey = businessKey
- auditEntity.WorkflowId = processInstanceId
- auditEntity.FirstAudit, _ = strconv.Atoi(firstAudit)
- auditEntity.SecondAudit, _ = strconv.Atoi(secondAudit)
- auditEntity.CommitComId = strconv.Itoa(unitId)
- svc.UpdateEntityByIdCols(annualId, auditEntity, cols)
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = auditEntity.BusinessKey
- ActiComplete.UserId = this.User.Id // 当前审批操作人员
- //ActiComplete.UserNames = secondAudit // 当前审批操作人员
- ActiComplete.Result = "2" //分办提交给二级单位初审
- ActiComplete.Remarks = auditRemark
- ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal != "true" {
- log.Println("工作流异常, 业务ID:"+auditEntity.BusinessKey+", 流程ID:"+auditEntity.WorkflowId, " 工作流传参: ", ActiComplete, receiveVal)
- panic("任务已审批,请刷新!")
- }
- // 入库成功 记录快照
- supplierLogService := supplierlog.GetSupplierLogService(utils.DBE)
- sourceId, _ := strconv.Atoi(annualId)
- supplierLogService.SaveSupplierLogForAnnual(auditEntity.SupplierId, sourceId) // 年审
- }
- // @Title 二级单位分办 --审批
- // @Description 二级分办
- // @Success 200 {object} controllers.Request
- // @router /separate-audit/:id [post]
- func (this *AnnualAuditController) SeparateAuditEntity() {
- annualId := this.Ctx.Input.Param(":id")
- Result := this.GetString("Result")
- firstAudit := this.GetString("FirstAudit")
- secondAudit := this.GetString("SecondAudit")
- // typeCode := this.GetString("TypeCode")
- AuditRemark := this.GetString("AuditRemark")
- var errinfo ErrorDataInfo
- defer func() { //finally处理失败的异常
- if err := recover(); err != nil {
- errinfo.Message = err.(string)
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- //返回正确结果
- errinfo.Message = "审核提交成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }()
- // 取出准入表信息
- srv := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var annualEntity annualaudit.OilAnnualAudit
- srv.GetEntityById(annualId, &annualEntity)
- if Result == "1" {
- if firstAudit == "" || secondAudit == "" {
- panic("请选择审批人")
- }
- // 将选择的初审和复审人员保存下来
- cols := []string{
- "FirstAudit",
- "SecondAudit",
- "thirdAudit",
- }
- annualEntity.FirstAudit, _ = strconv.Atoi(firstAudit)
- annualEntity.SecondAudit, _ = strconv.Atoi(secondAudit)
- srv.UpdateEntityByIdCols(annualId, annualEntity, cols)
- }
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = annualEntity.BusinessKey
- ActiComplete.UserId = this.User.Id // 审批人员
- // ActiComplete.UserNames = secondAudit // 初审人员
- ActiComplete.Result = Result //分办完成后只向前走
- ActiComplete.Remarks = AuditRemark
- ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal != "true" {
- log.Print("工作流异常, 业务ID:"+annualEntity.BusinessKey+", 流程ID:"+annualEntity.WorkflowId, " 工作流传参: ", ActiComplete, receiveVal)
- panic("任务已审批,请刷新!")
- }
- }
- // @Title 分办之后的各级审批 --审批 包含:二级单位初审、复审、企业法规处审核
- // @Description 分办之后的各级审批
- // @Success 200 {object} controllers.Request
- // @router /common-audit/:id [post]
- func (this *AnnualAuditController) CommonAuditEntity() {
- annualId := this.Ctx.Input.Param(":id")
- result := this.GetString("result")
- AuditRemark := this.GetString("AuditRemark")
- var errinfo ErrorDataInfo
- defer func() { //finally处理失败的异常
- if err := recover(); err != nil {
- errinfo.Message = err.(string)
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- //返回正确结果
- errinfo.Message = "审核提交成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }()
- //取出准入表信息
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var annualEntity annualaudit.OilAnnualAudit
- svc.GetEntityById(annualId, &annualEntity)
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = annualEntity.BusinessKey
- ActiComplete.UserId = this.User.Id //审批人员
- ActiComplete.Result = result //前台审批[同意、不同意]
- ActiComplete.Remarks = AuditRemark
- ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal != "true" {
- log.Println("工作流异常, 业务ID:"+annualEntity.BusinessKey+", 流程ID:"+annualEntity.WorkflowId, " 工作流传参: ", ActiComplete, receiveVal)
- panic("任务已审批,请刷新!")
- }
- }
- // @Title 确认是否入库
- // @Description 确认是否入库
- // @Success 200 {object} controllers.Request
- // @router /update-is-storage/:id [post]
- func (this *AnnualAuditController) UpdateIsStorage() {
- id := this.Ctx.Input.Param(":id")
- status := this.GetString("Status")
- //PACNumber := this.GetString("PACNumber")
- //SupplierId := this.GetString("SupplierId")
- var errinfo ErrorInfo
- if id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- defer func() { //finally处理失败的异常
- if err := recover(); err != nil {
- errinfo.Message = err.(string)
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- //返回正确结果
- if status == "1" {
- errinfo.Message = "入库成功"
- } else {
- errinfo.Message = "退回成功"
- }
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }()
- var annualEntity annualaudit.OilAnnualAudit
- annualSrv := annualaudit.GetOilAnnualAuditService(utils.DBE)
- annualSrv.GetEntityById(id, &annualEntity)
- //var supplierEntity supplier.OilSupplier
- //srv := supplier.GetOilSupplierService(utils.DBE)
- //srv.GetEntityById(SupplierId, &supplierEntity)
- //supplierEntity.PACNumber = PACNumber
- //srvCols := []string{"PACNumber"}
- //srv.UpdateEntityByIdCols(SupplierId, &supplierEntity, srvCols)
- AuditRemark := ""
- fmt.Println("年审审批入库传入状态:", status)
- if status == "1" {
- AuditRemark = "审批通过已入库。"
- } else {
- status = "0"
- AuditRemark = "入库退回。"
- }
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = annualEntity.BusinessKey
- ActiComplete.UserId = this.User.Id //审批人员
- ActiComplete.Result = status //前台审批[同意、不同意]
- ActiComplete.Remarks = AuditRemark
- ActiComplete.CallbackUrl = utils.Cfg.MustValue("workflow", "callbackHost")
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal != "true" {
- log.Println("工作流异常, 业务ID:"+annualEntity.BusinessKey+", 流程ID:"+annualEntity.WorkflowId, " 工作流传参: ", ActiComplete, receiveVal)
- panic("任务已审批,请刷新!")
- }
- }
- // @Title 删除单条信息
- // @Description
- // @Success 200 {object} ErrorInfo
- // @Failure 403 :id 为空
- // @router /delete/:Id [delete]
- func (this *AnnualAuditController) DeleteEntity() {
- Id := this.Ctx.Input.Param(":Id")
- var errinfo ErrorInfo
- if Id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- var model annualaudit.OilAnnualAudit
- var entityempty annualaudit.OilAnnualAudit
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- opdesc := "删除-" + Id
- // 删除变更的资质
- wherefile := "ParentId=" + Id
- svc.DeleteEntityBytbl(OilAnnualChangeDetailName, wherefile)
- err := svc.DeleteOperationAndWriteLogBytbl(""+OilAnnualAuditName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, "", "钻井日报")
- if err == nil {
- activitiService := workflow.GetActivitiService(utils.DBE)
- var deleteProcessVM workflow.DeleteProcessVM
- if model.WorkflowId != "" && model.WorkflowId != "0" {
- deleteProcessVM.ProcessInstanceId = model.WorkflowId
- deleteProcessVM.DeleteReason = "年审申请审批未通过后,被申请人删除"
- activitiService.DeleteComplete(deleteProcessVM)
- }
- errinfo.Message = "删除成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 审核
- // @Description 审核
- // @Success 200 {object} controllers.Request
- // @router /auditcallback [get]
- func (this *AnnualAuditController) AuditCallback() {
- result := this.GetString("ret")
- bussinsid := this.GetString("busid")
- status := this.GetString("status")
- annualId := this.GetString("annualId")
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var entityempty annualaudit.OilAnnualAudit
- var err error
- var errinfo ErrorInfo
- var cols []string = []string{"Status"}
- entityempty.Status = status
- err = svc.UpdateEntityBytbl(OilAnnualAuditName, annualId, &entityempty, cols)
- if err != nil {
- errinfo.Message = "审核错误!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- fmt.Println(result, status, annualId, bussinsid)
- }
- // @Title 审核
- // @Description 审核
- // @Success 200 {object} controllers.Request
- // @router /auditfirst [put]
- func (this *AnnualAuditController) AnnualAudit() {
- svc := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var jsonblob = this.Ctx.Input.RequestBody
- var dataother ShenHeModel
- var errinfo ErrorInfo
- json.Unmarshal(jsonblob, &dataother)
- ProfAudit := this.GetString("ProfAudit")
- firstAudit := this.GetString("FirstAudit")
- secondAudit := this.GetString("SecondAudit")
- thirdAudit := this.GetString("ThirdAudit")
- var list annualaudit.OilAnnualAudit
- where := " Id = '" + strconv.Itoa(dataother.AnnualId) + "'"
- svc.GetEntityByWhere(""+OilAnnualAuditName, where, &list)
- var supplierEntity supplier.OilSupplier
- wheresup := "Id=" + strconv.Itoa(list.SupplierId)
- svc.GetEntity(&supplierEntity, wheresup)
- var certEntity suppliercert.OilSupplierCert
- wherecert := "Id=" + strconv.Itoa(list.CerId)
- svc.GetEntity(&certEntity, wherecert)
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- //审核状态判断进行的操作
- step := 2
- status := ""
- backstatus := "0"
- var userIds string
- if list.Status == suppliercert.FEN_TRIAL_STATUS {
- userIds = firstAudit
- status = suppliercert.FIRST_TRIAL_STATUS
- step = 2
- backstatus = suppliercert.NO_FEN_TRIAL_STATUS
- if dataother.SuccessStatus == 1 {
- list.FirstAudit, _ = strconv.Atoi(firstAudit)
- list.SecondAudit, _ = strconv.Atoi(secondAudit)
- list.ThirdAudit, _ = strconv.Atoi(thirdAudit)
- cols := []string{
- "FirstAudit",
- "SecondAudit",
- "ThirdAudit",
- }
- svc.UpdateEntityByIdCols(dataother.AnnualId, list, cols)
- }
- }
- if list.Status == suppliercert.DRAFT_STATUS && this.User.IsCompanyUser == 1 {
- userIds = utils.ToStr(list.SecondAudit)
- status = suppliercert.SECOND_TRIAL_STATUS
- step = 2
- backstatus = suppliercert.NOPASS_STATUS
- }
- if list.Status == suppliercert.FIRST_TRIAL_STATUS {
- userIds = utils.ToStr(list.SecondAudit)
- status = suppliercert.SECOND_TRIAL_STATUS
- step = 2
- backstatus = suppliercert.NOPASS_STATUS
- } else if list.Status == suppliercert.SECOND_TRIAL_STATUS {
- status = suppliercert.CENT_AUDIT_STATUS
- step = 2
- backstatus = suppliercert.NO_SECOND_TRIAL_STATUS
- paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
- topid := paramSvc.GetBaseparameterMessage("", "paramset", "CENT_AUDIT")
- var userlist []userRole.Base_User
- var setting auditsetting.Base_OilAuditSetting
- usvc := userRole.GetUserService(utils.DBE)
- where := "AuditStepCode='" + workflow.PROF_REGULATION + "'"
- usvc.GetEntity(&setting, where)
- ids := usvc.GetUserIdsByRoleId(strconv.Itoa(setting.RoleId))
- tempstr := strings.Join(ids, ",")
- uids := strings.Replace(tempstr, "uid_", "", -1)
- uids = strings.Trim(uids, ",")
- if uids != "" {
- where := "Id in (" + uids + ")" + " and UnitId=" + topid
- usvc.GetEntities(&userlist, where)
- }
- for _, tmpUser := range userlist {
- userIds += strconv.Itoa(tmpUser.Id) + ","
- }
- userIds = strings.Trim(userIds, ",")
- } else if list.Status == suppliercert.THIRD_TRIAL_STATUS {
- userIds = ProfAudit
- status = suppliercert.PROF_AUDIT_STATUS
- step = 2
- backstatus = suppliercert.NO_THIRD_TRIAL_STATUS
- } else if list.Status == suppliercert.PROF_AUDIT_STATUS {
- status = suppliercert.PAYING_AUDIT_STATUS
- step = 3
- backstatus = suppliercert.NO_PROF_AUDIT_STATUS
- } else if list.Status == suppliercert.CENT_AUDIT_STATUS {
- status = suppliercert.PAYING_AUDIT_STATUS
- step = 3
- backstatus = suppliercert.NO_CENT_AUDIT_STATUS
- }
- var ActiComplete workflow.ActiCompleteVM
- ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- ActiComplete.BusinessKey = list.BusinessKey
- ActiComplete.UserNames = userIds
- ActiComplete.UserId = this.User.Id
- ActiComplete.Remarks = dataother.AuditorRemark
- ActiComplete.CallbackUrl = ""
- if dataother.SuccessStatus == 1 {
- ActiComplete.Result = "1"
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- var auditmodel annualaudit.OilAnnualAudit
- auditmodel.Status = status
- oldaplydate := list.ApplyTime
- if list.Status == suppliercert.CENT_AUDIT_STATUS {
- if certEntity.InStyle == suppliercert.PINGSHEN || certEntity.InStyle == suppliercert.ERJIWUZI {
- var certmodel suppliercert.OilSupplierCert
- certmodel.AuditDate = time.Now()
- certcols := []string{
- "Id",
- //"ApplyTime",
- "AuditDate",
- }
- svc.UpdateEntityByIdCols(list.CerId, certmodel, certcols)
- paysvc := paymentinfo.GetPaymentService(utils.DBE)
- var Amount float64
- asvc := oilcostmanage.GetOilCostManageService(utils.DBE)
- Amount = asvc.GetAmount("ANNUAL", list.SupplierTypeName)
- var payinfo paymentinfo.OilPaymentInfo
- payinfo.SupplierId = list.SupplierId
- payinfo.SrcId = list.Id
- payinfo.SupplierCertId = list.CerId
- payinfo.USCCode = supplierEntity.CommercialNo
- payinfo.SupplierName = supplierEntity.SupplierName
- payinfo.PayType = "2"
- payinfo.IsPay = "0"
- payinfo.IsInvoice = "0"
- payinfo.Amount = strconv.FormatFloat(Amount, 'E', -1, 64)
- payinfo.CreateUserId = list.CreateUserId
- payinfo.CreateBy = list.CreateBy
- payinfo.CreateOn = time.Now()
- paysvc.InsertEntity(&payinfo)
- //发短信
- toMobile := supplierEntity.Mobile
- bFlag := ""
- if list.SupplierTypeName == "01" {
- bFlag = "物资类"
- } else if list.SupplierTypeName == "02" {
- bFlag = "基建类"
- } else {
- bFlag = "服务类"
- }
- msg := "您的" + bFlag + "年审审核通过,请及时确认信息并交费!"
- msgService := msg2.GetMsgService(utils.DBE)
- msgService.HandleMsg(toMobile, msg, "4-1", list.CreateBy, supplierEntity.ContactName, strconv.Itoa(list.CreateUserId), this.User.Username)
- } else {
- auditmodel.Status = suppliercert.ALL_PASE_STATUS
- }
- var qualdetail []annualaudit.OilAnnualChangeDetail
- where1 := "SupplierId = " + utils.ToStr(list.SupplierId) + " and ParentId=" + strconv.Itoa(list.Id)
- svc.GetEntities(&qualdetail, where1)
- if len(qualdetail) > 0 {
- for i := 0; i < len(qualdetail); i++ {
- var supfilemodel supplierfile.OilSupplierFile
- supfilemodel.FileName = qualdetail[i].FileName
- supfilemodel.FileUrl = qualdetail[i].FileUrl
- supfilemodel.EffectDate = qualdetail[i].EffectDate
- svc.UpdateEntityBytbl(OilSupplierFileName, qualdetail[i].FileId, &supfilemodel, []string{"FileName", "FileUrl", "EffectDate"})
- }
- }
- var infoitems []infochange.OilAnnualChangeItem
- where := "SupplierId = " + utils.ToStr(supplierEntity.Id) + " and InfoId = " + utils.ToStr(list.Id)
- svc.GetEntities(&infoitems, where)
- this.updatesupplier(OilSupplierName, supplierEntity.Id, infoitems)
- } else {
- auditmodel.ApplyTime = oldaplydate
- }
- auditmodel.Step = step
- if receiveVal == "true" {
- cols := []string{
- "Id",
- "Status",
- "Step",
- //"ApplyTime",
- }
- svc.UpdateEntityByIdCols(dataother.AnnualId, auditmodel, cols)
- //paysvc.AddPaymentinfo(list.SupplierId, list.Id, Amount, "2")
- errinfo.Message = "提交成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "工作流异常,请联系管理员!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- } else {
- ActiComplete.Result = "0"
- receiveVal := svcActiviti.TaskComplete(ActiComplete)
- if receiveVal == "true" {
- if list.Status == suppliercert.PROF_AUDIT_STATUS {
- list.Status = suppliercert.NO_CENT_AUDIT_STATUS
- list.AuditIndex = list.AuditIndex + 1
- } else {
- list.Status = backstatus
- list.AuditIndex = list.AuditIndex + 1
- }
- list.Step = 1
- cols := []string{
- "Status",
- "Step",
- "AuditIndex",
- }
- _, err := svc.UpdateEntityByIdCols(dataother.AnnualId, list, cols)
- toMobile := supplierEntity.Mobile
- bFlag := ""
- if list.SupplierTypeName == "01" {
- bFlag = "物资类"
- } else if list.SupplierTypeName == "02" {
- bFlag = "基建类"
- } else {
- bFlag = "服务类"
- }
- msg := "您的" + bFlag + "年审审核未通过,请及时查看!"
- msgService := msg2.GetMsgService(utils.DBE)
- msgService.HandleMsg(toMobile, msg, "4-1", list.CreateBy, supplierEntity.ContactName, strconv.Itoa(list.CreateUserId), this.User.Username)
- if err == nil {
- errinfo.Message = "提交成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "提交失败!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- } else {
- errinfo.Message = "工作流异常,请联系管理员!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- }
- }
- // @Title 获取实体
- // @Description 获取实体
- // @Success 200 {object} supplier.OilSupplier
- // @router /getchangelist/:id [get]
- func (this *AnnualAuditController) GetChangeEntity() {
- Id := this.Ctx.Input.Param(":id")
- InfoId := this.GetString("InfomainId")
- var models [2]supplier.OilSupplier
- var model supplier.OilSupplier
- var enumModel supplier.OilSupplier
- svc := supplier.GetOilSupplierService(utils.DBE)
- svc.GetEntityByIdBytbl(OilSupplierName, Id, &model)
- models[0] = model
- var infoitems []infochange.OilAnnualChangeItem
- where := " SupplierId = " + Id + " and InfoId =" + InfoId
- where = where + " and ChangeStatus = 0"
- svc.GetEntitysByWhere(OilAnnualChangeItemName, where, &infoitems)
- tmpModel := &model
- enumModel = *tmpModel
- immumodel := reflect.ValueOf(&enumModel)
- elem := immumodel.Elem()
- if len(infoitems) == 0 {
- models[1] = enumModel
- this.Data["json"] = &models
- this.ServeJSON()
- return
- } else {
- for _, info := range infoitems {
- fmt.Println(info.SelectItem)
- fmt.Println(";;;;;;;;;", elem.FieldByName(info.SelectItem).Type().String())
- if elem.FieldByName(info.SelectItem).Type().String() == "int64" {
- intchangeinfo, _ := strconv.ParseInt(info.ChangeInfo, 10, 64)
- elem.FieldByName(info.SelectItem).SetInt(intchangeinfo)
- } else if elem.FieldByName(info.SelectItem).Type().String() == "float64" {
- floatchangeinfo, _ := strconv.ParseFloat(info.ChangeInfo, 64)
- elem.FieldByName(info.SelectItem).SetFloat(floatchangeinfo)
- } else if elem.FieldByName(info.SelectItem).Type().String() == "time.Time" {
- t, _ := time.Parse("2006-01-02", info.ChangeInfo[0:10])
- elem.FieldByName(info.SelectItem).Set(reflect.ValueOf(t))
- } else {
- elem.FieldByName(info.SelectItem).SetString(info.ChangeInfo)
- }
- }
- models[1] = enumModel
- this.Data["json"] = &models
- this.ServeJSON()
- }
- }
- // @Title 添加
- // @Description 新增
- // @Success 200 {object} controllers.Request
- // @router /addinfochangeitemch [post]
- func (this *AnnualAuditController) AddInfoChangeItemCh() {
- var model InfoChangeItemsAll
- var jsonBlob = this.Ctx.Input.RequestBody
- svc := infochange.GetInfoChangeService(utils.DBE)
- json.Unmarshal(jsonBlob, &model)
- var err error
- where := " SupplierId = " + model.SupplierId
- where = where + " and InfoId = " + model.MInfoId
- var deleteEntity infochange.OilAnnualChangeItem
- delMainId, _ := strconv.Atoi(model.MInfoId)
- deleteEntity.InfoId = delMainId
- svc.DBE.Delete(deleteEntity)
- var infoitementitys []infochange.OilAnnualChangeItem
- for i := 0; i < len(model.InfochangeForm); i++ {
- var infoitementity infochange.OilAnnualChangeItem
- infoitementity.SelectItem = model.InfochangeForm[i].SelectItem
- infoitementity.SelectItemName = model.InfochangeForm[i].SelectItemName
- infoitementity.ChangeInfo = model.InfochangeForm[i].ChangeInfo
- infoitementity.BeChangeInfo = model.InfochangeForm[i].BeChangeInfo
- infoitementity.ChangeStatus = 0
- infoitementity.SupplierId, _ = strconv.Atoi(model.SupplierId)
- infoitementity.InfoId, _ = strconv.Atoi(model.MInfoId)
- infoitementity.CreateOn = time.Now()
- infoitementity.CreateBy = this.User.Realname
- infoitementity.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- infoitementitys = append(infoitementitys, infoitementity)
- }
- _, err = svc.InsertEntityBytbl(""+OilAnnualChangeItemName, &infoitementitys)
- var errinfo ErrorDataInfo
- if err == nil {
- //新增
- errinfo.Message = "添加成功!"
- errinfo.Code = 0
- //errinfo.Item = model.Id
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 获取变更项
- // @Description 获取实体
- // @Success 200 {object} annualaudit.OilAnnualAudit
- // @router /auditget/:id [get]
- func (this *AnnualAuditController) GetEntityThen() {
- InfoId := this.Ctx.Input.Param(":id")
- var model []infochange.OilAnnualChangeItem
- svc := infochange.GetInfoChangeService(utils.DBE)
- where := " InfoId = " + InfoId
- svc.GetEntitysByWhere(OilAnnualChangeItemName, where, &model)
- var datainfo DataInfo
- datainfo.Items = model
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- //更新供方信息表
- func (this *AnnualAuditController) updatesupplier(supname string, suppid int, infoitems []infochange.OilAnnualChangeItem) error {
- svc := infochange.GetInfoChangeService(utils.DBE)
- var err error
- if len(infoitems) > 0 {
- for i := 0; i < len(infoitems); i++ {
- //var cols []string
- //cols = append(cols, infoitems[i].SelectItem)
- where := " Id = " + utils.ToStr(suppid)
- var sql string
- sql = `UPDATE ` + supname + ` set ` + infoitems[i].SelectItem + ` = '` + infoitems[i].ChangeInfo + `' where ` + where
- _, err = svc.DBE.Exec(sql)
- //err = svc.UpdateEntityBytbl(OilSupplierName, suppid, &supmodel, cols)
- }
- }
- return err
- }
- // @Title 资质文件
- // @Description get user by token
- // @Success 200 {object} models.Userblood
- // @router /filelist [get]
- func (this *AnnualAuditController) FileList() {
- page := this.GetPageInfoForm()
- var list []qualchange.OilQualChangeDetail1
- svc := qualchange.GetQualChangeService(utils.DBE)
- where := " 1=1 and a.IsDelete = 0"
- orderby := "a.SupplierTypeCode"
- asc := true
- Order := this.GetString("Order")
- Prop := this.GetString("Prop")
- if Order != "" && Prop != "" {
- orderby = Prop
- if Order == "asc" {
- asc = true
- }
- }
- SupplierId := this.GetString("SupplierId")
- MInfoId := this.GetString("MInfoId")
- if SupplierId != "" {
- where = where + " and a.SupplierId = '" + SupplierId + "'"
- }
- SupplierTypeCode := this.GetString("SupplierTypeCode")
- if SupplierTypeCode != "" {
- where = where + " and a.SupplierTypeCode in ( '000', '" + SupplierTypeCode + "')"
- }
- var total int64
- AuditStatus := this.GetString("Status")
- if AuditStatus == "8" {
- total = svc.GetQualPagingEntitiesStatus(OilSupplierFileName, OilAnnualChangeDetailName, page.CurrentPage, page.Size, orderby, asc, &list, where, MInfoId)
- } else {
- total = svc.GetQualPagingEntities(OilSupplierFileName, OilAnnualChangeDetailName, page.CurrentPage, page.Size, orderby, asc, &list, where, MInfoId)
- }
- var datainfo DataInfo
- datainfo.Items = list
- datainfo.CurrentItemCount = total
- this.Data["json"] = &datainfo
- this.ServeJSON()
- }
- // @Title 添加资金
- // @Description 添加资金
- // @Success 200 {object}
- // @router /addqualchange/:id [post]
- func (this *AnnualAuditController) AddQualChange() {
- id := this.Ctx.Input.Param(":id")
- var errinfo ErrorInfo
- if id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- var model annualaudit.OilAnnualChangeDetail
- var jsonblob = this.Ctx.Input.RequestBody
- json.Unmarshal(jsonblob, &model)
- svc := qualchange.GetQualChangeService(utils.DBE)
- var supplierfile supplierfile.OilSupplierFile
- where := "SupplierId = '" + strconv.Itoa(model.SupplierId) + "' and NeedFileType='" + model.NeedFileType + "'"
- has := svc.GetEntity(&supplierfile, where)
- var tableHeader tableheader.BaseTableheader
- where1 := "Name = '" + model.NeedFileType + "'"
- svc.GetEntityByWhere(BaseTableHeader, where1, &tableHeader)
- if has {
- errinfo.Message = "操作失败!该资质已添加"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- supplierfile.SupplierId = model.SupplierId
- supplierfile.SupplierTypeCode = model.SupplierTypeCode
- supplierfile.IsManuf = tableHeader.IsManuf
- supplierfile.NeedFileType = model.NeedFileType
- supplierfile.FileType = 1
- supplierfile.SupType = 4
- supplierfile.CreateOn = time.Now()
- supplierfile.CreateUserId, _ = strconv.Atoi(this.User.Id)
- supplierfile.CreateBy = this.User.Realname
- supplierfile.FileUrl = strings.Trim(model.FileUrl, "$")
- supplierfile.FileName = strings.Trim(model.FileName, "$")
- supplierfile.EffectDate = model.EffectDate
- supplierfile.OtherRemark = model.Remark
- svc.InsertEntity(&supplierfile)
- model.ParentId, _ = strconv.Atoi(id)
- model.FileId = supplierfile.Id
- model.FileUrl = strings.Trim(model.FileUrl, "$")
- model.FileName = strings.Trim(model.FileName, "$")
- var err error
- var qualdetaimodel []annualaudit.OilAnnualChangeDetail
- qdwhere := " SupplierId = " + utils.ToStr(model.SupplierId) + " and FileId = " + utils.ToStr(supplierfile.Id) + " and ParentId=" + id
- svc.GetEntitysByWhere(OilAnnualChangeDetailName, qdwhere, &qualdetaimodel)
- if len(qualdetaimodel) == 0 {
- model.CreateOn = time.Now()
- model.CreateBy = this.User.Realname
- model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- _, err = svc.InsertEntityBytbl(OilAnnualChangeDetailName, &model)
- } else {
- err = svc.UpdateEntityBywheretbl(OilAnnualChangeDetailName, &model, []string{"OldEffectDate", "FileUrl", "FileName", "OtherRemark"}, qdwhere)
- }
- if err == nil {
- errinfo.Message = "操作成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 资质文件变更上传
- // @Description 更新文件上传
- // @Param id path string true
- // @Success 200 {object}
- // @router /editqualchange/:id [put]
- func (this *AnnualAuditController) EditQualChange() {
- id := this.Ctx.Input.Param(":id")
- var errinfo ErrorInfo
- if id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- var model annualaudit.OilAnnualChangeDetail
- var jsonblob = this.Ctx.Input.RequestBody
- svc := qualchange.GetQualChangeService(utils.DBE)
- json.Unmarshal(jsonblob, &model)
- model.FileUrl = strings.Trim(model.FileUrl, "$")
- model.FileName = strings.Trim(model.FileName, "$")
- model.OldFileUrl = strings.Trim(model.OldFileUrl, "$")
- model.OldFileName = strings.Trim(model.OldFileName, "$")
- var supplierfile supplierfile.OilSupplierFile
- svc.GetEntityByIdBytbl(OilSupplierFileName, model.Id, &supplierfile)
- if supplierfile.FileUrl == "" {
- //区别 更新前和更新后文件
- supplierfile.FileUrl = strings.Trim(model.FileUrl, "$")
- supplierfile.FileName = strings.Trim(model.FileName, "$")
- supplierfile.EffectDate = model.EffectDate
- }
- supplierfile.ModifiedOn = time.Now()
- supplierfile.ModifiedUserId, _ = strconv.Atoi(this.User.Id)
- supplierfile.ModifiedBy = this.User.Realname
- supplierfile.OtherRemark = model.Remark
- svc.UpdateEntityBywheretbl(OilSupplierFileName, &supplierfile, []string{"EffectDate", "FileUrl", "FileName", "ModifiedOn", "ModifiedUserId", "ModifiedBy", "OtherRemark"}, "Id = "+strconv.Itoa(model.Id))
- var err error
- var entity annualaudit.OilAnnualChangeDetail
- var qualdetaimodel []annualaudit.OilAnnualChangeDetail
- var mainentirt qualchange.OilQualChangeMain
- var qualmain []qualchange.OilQualChangeMain
- qmwhere := " SupplierId = " + utils.ToStr(model.SupplierId)
- svc.GetEntitysByWhere(OilQualChangeMainName, qmwhere, &qualmain)
- mainentirt.Status = "0"
- mainentirt.Step = 1
- err = svc.UpdateEntityBywheretbl(OilQualChangeMainName, &mainentirt, []string{"SupplierCertId", "Status", "Step"}, qmwhere)
- qdwhere := " SupplierId = " + utils.ToStr(model.SupplierId) + " and FileId = " + utils.ToStr(model.Id) + " and ParentId=" + id
- svc.GetEntitysByWhere(OilAnnualChangeDetailName, qdwhere, &qualdetaimodel)
- entity = model
- entity.Id = 0
- entity.ParentId, _ = strconv.Atoi(id)
- entity.FileId = model.Id
- if len(qualdetaimodel) == 0 {
- entity.CreateOn = time.Now()
- entity.CreateBy = this.User.Realname
- entity.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- _, err = svc.InsertEntityBytbl(OilAnnualChangeDetailName, &entity)
- } else {
- err = svc.UpdateEntityBywheretbl(OilAnnualChangeDetailName, &entity, []string{"EffectDate", "FileUrl", "FileName", "OtherRemark"}, qdwhere)
- }
- if err == nil {
- errinfo.Message = "操作成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 删除新上传的资质
- // @Description
- // @Success 200 {object} ErrorInfo
- // @Failure 403 :id 为空
- // @router /deletenewfile/:Id [delete]
- func (this *AnnualAuditController) DeleteNewFile() {
- Id := this.Ctx.Input.Param(":Id")
- var errinfo ErrorInfo
- if Id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- svc := infochange.GetInfoChangeService(utils.DBE)
- where := "FileId=" + Id
- err := svc.DeleteEntityBytbl(OilAnnualChangeDetailName, where)
- if err == nil {
- errinfo.Message = "删除成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 删除添加的资质
- // @Description
- // @Success 200 {object} ErrorInfo
- // @Failure 403 :id 为空
- // @router /deleteaddfile/:Id [delete]
- func (this *AnnualAuditController) DeleteAddFile() {
- Id := this.Ctx.Input.Param(":Id")
- var errinfo ErrorInfo
- if Id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- svc := infochange.GetInfoChangeService(utils.DBE)
- var file supplierfile.OilSupplierFile
- has1 := svc.GetEntity(&file, "Id="+Id)
- if !has1 {
- errinfo.Message = "删除失败"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- // 如果有正在进行中的流程,不允许删除任何资质
- var certList []suppliercert.OilSupplierCert
- svc.GetEntitysByWhere(OilSupplierCertName, "Status > 0 and Status < 8 and SupplierId = "+strconv.Itoa(file.SupplierId), &certList)
- var appendList suppliercertappend.OilSupplierCertAppend
- svc.GetEntityByWhere(OilSupplierCertAppendName, "Status > 0 and Status < 8 and SupplierId = "+strconv.Itoa(file.SupplierId), &appendList)
- var infoList infochange.OilInfoChange
- svc.GetEntityByWhere(OilInfoChangeName, "Status > 0 and Status < 8 and SupplierId = "+strconv.Itoa(file.SupplierId), &infoList)
- if len(certList) > 0 || appendList.Id > 0 || infoList.Id > 0 {
- errinfo.Message = "有正在审核中的流程,不允许删除任何资质"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- where := "FileId=" + Id
- err := svc.DeleteEntityBytbl(OilAnnualChangeDetailName, where)
- where1 := "Id=" + Id
- err = svc.DeleteEntityBytbl(OilSupplierFileName, where1)
- if err == nil {
- errinfo.Message = "删除成功"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 添加资质
- // @Description 添加资质
- // @Success 200 {object}
- // @router /addqualchange/:id [post]
- func (this *AnnualAuditController) AddAppChange() {
- id := this.Ctx.Input.Param(":id")
- var errinfo ErrorInfo
- if id == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- var model annualaudit.OilAnnualChangeDetail
- var jsonblob = this.Ctx.Input.RequestBody
- json.Unmarshal(jsonblob, &model)
- svc := qualchange.GetQualChangeService(utils.DBE)
- var file supplierfile.OilSupplierFile
- where := "SupplierId = '" + strconv.Itoa(model.SupplierId) + "' and NeedFileType='" + model.NeedFileType + "'"
- has := svc.GetEntity(&file, where)
- var tableHeader tableheader.BaseTableheader
- where1 := "Name = '" + model.NeedFileType + "'"
- svc.GetEntityByWhere(BaseTableHeader, where1, &tableHeader)
- if has {
- errinfo.Message = "操作失败!该资质已添加"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- file.SupplierId = model.SupplierId
- file.SupplierTypeCode = model.SupplierTypeCode
- file.IsManuf = tableHeader.IsManuf
- file.NeedFileType = model.NeedFileType
- file.FileType = 0
- file.SupType = 2
- file.CreateOn = time.Now()
- file.CreateUserId, _ = strconv.Atoi(this.User.Id)
- file.CreateBy = this.User.Realname
- file.FileUrl = strings.Trim(model.FileUrl, "$")
- file.FileName = strings.Trim(model.FileName, "$")
- file.EffectDate = model.EffectDate
- file.OtherRemark = model.Remark
- svc.InsertEntity(&file)
- model.ParentId, _ = strconv.Atoi(id)
- model.FileId = file.Id
- model.FileUrl = strings.Trim(model.FileUrl, "$")
- model.FileName = strings.Trim(model.FileName, "$")
- var err error
- var qualdetaimodel []annualaudit.OilAnnualChangeDetail
- qdwhere := " SupplierId = " + utils.ToStr(model.SupplierId) + " and FileId = " + utils.ToStr(file.Id) + " and ParentId=" + id
- svc.GetEntitysByWhere(OilAnnualChangeDetailName, qdwhere, &qualdetaimodel)
- if len(qualdetaimodel) == 0 {
- model.CreateOn = time.Now()
- model.CreateBy = this.User.Realname
- model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
- _, err = svc.InsertEntityBytbl(OilAnnualChangeDetailName, &model)
- } else {
- err = svc.UpdateEntityBywheretbl(OilAnnualChangeDetailName, &model, []string{"OldEffectDate", "FileUrl", "FileName", "OtherRemark"}, qdwhere)
- }
- if err == nil {
- errinfo.Message = "操作成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- } else {
- errinfo.Message = "操作失败!" + utils.AlertProcess(err.Error())
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- // @Title 交费用户确认交费
- // @Description 交费用户确认交费
- // @Success 200 {object} controllers.Request
- // @router /update-pay-status/:id [post]
- func (this *AnnualAuditController) UpdatePayStatus() {
- annualId := this.Ctx.Input.Param(":id")
- var errinfo ErrorInfo
- if annualId == "" {
- errinfo.Message = "操作失败!请求信息不完整"
- errinfo.Code = -2
- this.Data["json"] = &errinfo
- this.ServeJSON()
- return
- }
- annualAuditSrv := annualaudit.GetOilAnnualAuditService(utils.DBE)
- var annualAuditEntity annualaudit.OilAnnualAudit
- annualAuditSrv.GetEntityById(annualId, &annualAuditEntity)
- paySrv := paymentinfo.GetPaymentService(utils.DBE)
- var paymentInfoEntities []paymentinfo.OilPaymentInfo
- err := paySrv.GetPaymentInfoBySrcId(annualId, "2", &paymentInfoEntities)
- if err != nil {
- errinfo.Message = "未知错误,请稍后再试!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- if len(paymentInfoEntities) == 1 {
- for _, item := range paymentInfoEntities {
- if item.IsPay == "1" {
- errinfo.Message = "已确认交费!请耐心等待"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- if item.IsPay == "2" {
- errinfo.Message = "已交费!请勿重复操作!"
- errinfo.Code = -1
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
- }
- }
- sql := "UPDATE OilPaymentInfo SET IsPay ='1' where SrcId=" + annualId
- annualAuditSrv.DBE.Exec(sql)
- errinfo.Message = "确认交费成功!"
- errinfo.Code = 0
- this.Data["json"] = &errinfo
- this.ServeJSON()
- }
|