| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250 |
- 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/suppliercert"
- "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"
- "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
- }
- }
- 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
- sql := " UserName='" + this.User.Username + "'"
- 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 + "'"
- }
- }
- where = where + " and b.SupplierTypeCode='" + code + "' and b.Status='8'"
- 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 + "'"
- 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='6' or a.Status='7')"
- }else {
- where = " WHERE b.Id is NOT NULL AND (a.InFlag='1' or a.InFlag='2' or a.Status='6' or a.Status='7')"
- }
- var registerUser register.OilCorporateInfo
- sql := " UserName='" + this.User.Username + "'"
- 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)
- firstAudit := this.GetString("firstAudit")
- 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)
- annualId := model.Id
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- //启动工作流
- businessKey := utils.ToStr(annualId) + "-" + strconv.Itoa(model.AuditIndex)
- result := strconv.Itoa(this.User.IsCompanyUser)
- processInstanceId := svcActiviti.StartProcess2(workflow.OIL_AUDIT_APPLY, businessKey, this.User.Id, result, model.SupplierTypeName, model.SupplierName)
- var auditmodel annualaudit.OilAnnualAudit
- auditmodel.WorkflowId = processInstanceId
- auditmodel.FirstAudit, _ = strconv.Atoi(firstAudit)
- auditmodel.AuditIndex = model.AuditIndex
- auditmodel.BusinessKey = businessKey
- cols := []string{
- "Id",
- "WorkflowId",
- "FirstAudit",
- "AuditIndex",
- "BusinessKey",
- }
- _, err = svc.UpdateEntityByIdCols(annualId, auditmodel, cols)
- 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 {
- 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 < 5"
- 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' "
- 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
- }
- aplytime := suppliermodel.ApplyTime
- subtime := this.getTimeSub(aplytime, 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)
- annualId := model.Id
- svcActiviti := workflow.GetActivitiService(utils.DBE)
- //启动工作流
- businessKey := utils.ToStr(annualId) + "-" + strconv.Itoa(model.AuditIndex)
- result := strconv.Itoa(this.User.IsCompanyUser)
- processInstanceId := svcActiviti.StartProcess2(workflow.OIL_AUDIT_APPLY, businessKey, this.User.Id, result, model.SupplierTypeName, model.SupplierName)
- //var ActiComplete workflow.ActiCompleteVM
- //ActiComplete.ProcessKey = workflow.OIL_AUDIT_APPLY
- //ActiComplete.BusinessKey = businessKey
- //ActiComplete.UserNames = firstAudit
- //ActiComplete.UserId = this.User.Id
- //ActiComplete.Result = "1"
- //ActiComplete.Remarks = model.Remark
- //ActiComplete.CallbackUrl = ""
- //提交给二级单位初审
- //receiveVal := svcActiviti.TaskComplete(ActiComplete)
- var auditmodel annualaudit.OilAnnualAudit
- auditmodel.WorkflowId = processInstanceId
- auditmodel.FirstAudit, _ = strconv.Atoi(firstAudit)
- auditmodel.AuditIndex = model.AuditIndex
- auditmodel.BusinessKey = businessKey
- cols := []string{
- "Id",
- "WorkflowId",
- "FirstAudit",
- "AuditIndex",
- "BusinessKey",
- }
- //if receiveVal == "true" {
- _, err = svc.UpdateEntityByIdCols(annualId, auditmodel, cols)
- 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()
- }
- //} else {
- // errinfo.Message = "工作流异常,请联系管理员!"
- // 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} 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
- err := svc.DeleteOperationAndWriteLogBytbl(""+OilAnnualAuditName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, "", "钻井日报")
- 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 /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.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.PAYING_AUDIT_STATUS
- step = 2
- backstatus = suppliercert.NO_SECOND_TRIAL_STATUS
- //svc := organize.GetOrganizeService(utils.DBE)
- //unitId := svc.GetMyUnitDepartmentId(strconv.Itoa(list.ThirdAudit))
- //var userlist []userRole.Base_User
- //var setting auditsetting.Base_OilAuditSetting
- //usvc := userRole.GetUserService(utils.DBE)
- //where := "AuditStepCode='" + workflow.PROF_RECE + "'"
- //svc.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=" + unitId
- // svc.GetEntities(&userlist, where)
- //}
- //
- //
- //for _, tmpUser := range userlist {
- // userIds += strconv.Itoa(tmpUser.Id) + ","//strconv.FormatInt(tmpUser.Id, 10) + ","
- //}
- //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
- }
- 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.SECOND_TRIAL_STATUS {
- if certEntity.InStyle == "1" {
- 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("APPEND",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.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))
- } else {
- auditmodel.Status = suppliercert.ALL_PASE_STATUS
- }
- 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))
- 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)
- 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
- }
|