@@ -114,6 +114,20 @@ func CentralKitchenForSchoolStudentList(c *gin.Context) { | |||||
"value": "admission_type_by_grade", | "value": "admission_type_by_grade", | ||||
}, | }, | ||||
}, | }, | ||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -147,6 +161,20 @@ func CentralKitchenForSchoolTeacherList(c *gin.Context) { | |||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": resp, | "list": resp, | ||||
"total": total, | "total": total, | ||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -173,7 +201,8 @@ func CentralKitchenForSchoolTeacherUpdate(c *gin.Context) { | |||||
} | } | ||||
userIdentity.IdNo = req.IdNo | userIdentity.IdNo = req.IdNo | ||||
userIdentity.Name = req.Name | userIdentity.Name = req.Name | ||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name") | |||||
userIdentity.CertType = req.CertType | |||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name", "cert_type") | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -795,8 +824,9 @@ func CentralKitchenForSchoolOrdList(c *gin.Context) { | |||||
return | return | ||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": resp, | |||||
"total": total, | |||||
"list": resp, | |||||
"total": total, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"kind_list": []map[string]string{ | "kind_list": []map[string]string{ | ||||
{ | { | ||||
"name": "按学期购买", | "name": "按学期购买", | ||||
@@ -917,6 +947,7 @@ func CentralKitchenForSchoolReserveList(c *gin.Context) { | |||||
"value": enum.CentralKitchenForSchoolUserWithDayKindForDinner, | "value": enum.CentralKitchenForSchoolUserWithDayKindForDinner, | ||||
}, | }, | ||||
}, | }, | ||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -25,56 +25,53 @@ func EnterpriseManageInfo(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | ||||
return | return | ||||
} | } | ||||
var resp interface{} | var resp interface{} | ||||
switch enterprise.Kind { | |||||
case enum.EnterprisePvdByCentralKitchenForSchool: | |||||
//判断校企类型 | |||||
if enterprise.Pvd == enum.EnterprisePvdForOnlinePayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
err, resp = svc.CentralKitchenForSchoolInfo(utils.StrToInt(enterpriseId)) | err, resp = svc.CentralKitchenForSchoolInfo(utils.StrToInt(enterpriseId)) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
case enum.EnterprisePvdByCentralKitchenForFactory: | |||||
break | |||||
case enum.EnterprisePvdBySelfSupportForSchool: | |||||
} | |||||
if enterprise.Pvd == enum.EnterprisePvdForFaceScanPayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
err, resp = svc.SelfSupportForSchoolInfo(utils.StrToInt(enterpriseId)) | err, resp = svc.SelfSupportForSchoolInfo(utils.StrToInt(enterpriseId)) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
case enum.EnterprisePvdBySelfSupportForFactory: | |||||
break | |||||
case enum.EnterprisePvdByNursingHome: | |||||
} | |||||
if enterprise.Kind == enum.EnterpriseKindByNursingHome { | |||||
err, resp = svc.NursingHomeInfo(utils.StrToInt(enterpriseId)) | err, resp = svc.NursingHomeInfo(utils.StrToInt(enterpriseId)) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"info": resp, | "info": resp, | ||||
"kind": []map[string]interface{}{ | "kind": []map[string]interface{}{ | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForSchool, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForFactory, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForSchool).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForSchool, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForSchool).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForFactory).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForFactory, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForFactory).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByNursingHome).String(), | |||||
"value": enum.EnterprisePvdByNursingHome, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByNursingHome).String(), | |||||
"value": enum.EnterpriseKindByNursingHome, | |||||
}, | }, | ||||
}, | }, | ||||
}, nil) | }, nil) | ||||
@@ -103,33 +100,29 @@ func UserIdentityList(c *gin.Context) { | |||||
} | } | ||||
var resp interface{} | var resp interface{} | ||||
switch enterprise.Kind { | |||||
case enum.EnterprisePvdByCentralKitchenForSchool: | |||||
//判断校企类型 | |||||
if enterprise.Pvd == enum.EnterprisePvdForOnlinePayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
resp, err = svc2.EnterpriseUserListByCentralKitchenForSchool(req) | resp, err = svc2.EnterpriseUserListByCentralKitchenForSchool(req) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
case enum.EnterprisePvdByCentralKitchenForFactory: | |||||
break | |||||
case enum.EnterprisePvdBySelfSupportForSchool: | |||||
} | |||||
if enterprise.Pvd == enum.EnterprisePvdForFaceScanPayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
resp, err = svc2.EnterpriseUserListByCentralKitchenForSchool(req) | resp, err = svc2.EnterpriseUserListByCentralKitchenForSchool(req) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
case enum.EnterprisePvdBySelfSupportForFactory: | |||||
break | |||||
case enum.EnterprisePvdByNursingHome: | |||||
} | |||||
if enterprise.Kind == enum.EnterpriseKindByNursingHome { | |||||
resp, err = svc2.EnterpriseUserListByNursingHome(req) | resp, err = svc2.EnterpriseUserListByNursingHome(req) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
} | } | ||||
e.OutSuc(c, resp, nil) | e.OutSuc(c, resp, nil) | ||||
return | return | ||||
} | } |
@@ -3,6 +3,7 @@ package hdl | |||||
import ( | import ( | ||||
"applet/app/admin/lib/validate" | "applet/app/admin/lib/validate" | ||||
"applet/app/admin/md" | "applet/app/admin/md" | ||||
svc3 "applet/app/admin/svc" | |||||
svc2 "applet/app/admin/svc/enterprise_manage" | svc2 "applet/app/admin/svc/enterprise_manage" | ||||
md2 "applet/app/customer/md" | md2 "applet/app/customer/md" | ||||
"applet/app/customer/svc" | "applet/app/customer/svc" | ||||
@@ -130,6 +131,20 @@ func SelfSupportForSchoolStudentList(c *gin.Context) { | |||||
"value": 2, | "value": 2, | ||||
}, | }, | ||||
}, | }, | ||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -173,6 +188,20 @@ func SelfSupportForSchoolTeacherList(c *gin.Context) { | |||||
"value": 2, | "value": 2, | ||||
}, | }, | ||||
}, | }, | ||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -199,7 +228,8 @@ func SelfSupportForSchoolTeacherUpdate(c *gin.Context) { | |||||
} | } | ||||
userIdentity.IdNo = req.IdNo | userIdentity.IdNo = req.IdNo | ||||
userIdentity.Name = req.Name | userIdentity.Name = req.Name | ||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name") | |||||
userIdentity.CertType = req.CertType | |||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name", "cert_type") | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -620,7 +650,7 @@ func SelfSupportForSchoolAddWorker(c *gin.Context) { | |||||
//1、查找当前身份是否已存在 | //1、查找当前身份是否已存在 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(0) | userIdentityDb.Set(0) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo, enum.UserIdentityCertTypeForIdCard) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -636,6 +666,7 @@ func SelfSupportForSchoolAddWorker(c *gin.Context) { | |||||
Uid: 0, | Uid: 0, | ||||
Name: req.Name, | Name: req.Name, | ||||
IdNo: req.IdNo, | IdNo: req.IdNo, | ||||
CertType: enum.UserIdentityCertTypeForIdCard, | |||||
Kind: enum.UserIdentityKindForWorker, | Kind: enum.UserIdentityKindForWorker, | ||||
Identity: enum.UserIdentityForSelfSupportForWorker, | Identity: enum.UserIdentityForSelfSupportForWorker, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -671,7 +702,7 @@ func SelfSupportForSchoolAddTeacher(c *gin.Context) { | |||||
//1、查找当前身份是否已存在 | //1、查找当前身份是否已存在 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(0) | userIdentityDb.Set(0) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo, req.CertType) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -687,6 +718,7 @@ func SelfSupportForSchoolAddTeacher(c *gin.Context) { | |||||
Uid: 0, | Uid: 0, | ||||
Name: req.Name, | Name: req.Name, | ||||
IdNo: req.IdNo, | IdNo: req.IdNo, | ||||
CertType: req.CertType, | |||||
Kind: enum.UserIdentityKindForCommon, | Kind: enum.UserIdentityKindForCommon, | ||||
Identity: enum.UserIdentityForSelfSupportForTeacher, | Identity: enum.UserIdentityForSelfSupportForTeacher, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -769,7 +801,7 @@ func SelfSupportForSchoolAddStudent(c *gin.Context) { | |||||
//1、查找当前身份是否已存在 | //1、查找当前身份是否已存在 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(0) | userIdentityDb.Set(0) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo, req.CertType) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -785,6 +817,7 @@ func SelfSupportForSchoolAddStudent(c *gin.Context) { | |||||
Uid: 0, | Uid: 0, | ||||
Name: req.Name, | Name: req.Name, | ||||
IdNo: req.IdNo, | IdNo: req.IdNo, | ||||
CertType: req.CertType, | |||||
Kind: enum.UserIdentityKindForCommon, | Kind: enum.UserIdentityKindForCommon, | ||||
Identity: enum.UserIdentityForSelfSupportForStudent, | Identity: enum.UserIdentityForSelfSupportForStudent, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -900,7 +933,7 @@ func SelfSupportForSchoolImportTeacher(c *gin.Context) { | |||||
//1、查找当前身份是否已存在 | //1、查找当前身份是否已存在 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(0) | userIdentityDb.Set(0) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(enterpriseId, idNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(enterpriseId, idNo, enum.UserIdentityCertTypeForIdCard) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -915,6 +948,7 @@ func SelfSupportForSchoolImportTeacher(c *gin.Context) { | |||||
Uid: 0, | Uid: 0, | ||||
Name: name, | Name: name, | ||||
IdNo: idNo, | IdNo: idNo, | ||||
CertType: enum.UserIdentityCertTypeForIdCard, | |||||
Kind: enum.UserIdentityKindForCommon, | Kind: enum.UserIdentityKindForCommon, | ||||
Identity: enum.UserIdentityForSelfSupportForTeacher, | Identity: enum.UserIdentityForSelfSupportForTeacher, | ||||
EnterpriseId: enterpriseId, | EnterpriseId: enterpriseId, | ||||
@@ -1038,8 +1072,9 @@ func SelfSupportForSchoolOrdList(c *gin.Context) { | |||||
return | return | ||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": resp, | |||||
"total": total, | |||||
"list": resp, | |||||
"total": total, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"order_status_list": []map[string]interface{}{ | "order_status_list": []map[string]interface{}{ | ||||
{ | { | ||||
"name": enum.SelfSupportForSchoolOrdOrderStatus.String(enum.SelfSupportForSchoolOrdOrderStatusForWait), | "name": enum.SelfSupportForSchoolOrdOrderStatus.String(enum.SelfSupportForSchoolOrdOrderStatusForWait), | ||||
@@ -1054,6 +1089,286 @@ func SelfSupportForSchoolOrdList(c *gin.Context) { | |||||
return | return | ||||
} | } | ||||
func SelfSupportForSchoolConsumeLimit(c *gin.Context) { | |||||
var req []*md.SelfSupportForSchoolConsumeLimitReq | |||||
err := c.ShouldBindJSON(&req) | |||||
if err != nil { | |||||
err = validate.HandleValidateErr(err) | |||||
err1 := err.(e.E) | |||||
e.OutErr(c, err1.Code, err1.Error()) | |||||
return | |||||
} | |||||
enterpriseId := utils.StrToInt(c.DefaultQuery("enterprise_id", "")) | |||||
enterpriseDb := db.EnterpriseDb{} | |||||
enterpriseDb.Set() | |||||
enterprise, err := enterpriseDb.GetEnterprise(enterpriseId) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | |||||
return | |||||
} | |||||
if enterprise == nil { | |||||
e.OutErr(c, e.ERR_NO_DATA, "未查询到对应校企记录") | |||||
return | |||||
} | |||||
selfSupportForSchoolInfoDb := db.SelfSupportForSchoolInfoDb{} | |||||
selfSupportForSchoolInfoDb.Set(enterpriseId) | |||||
selfSupportForSchoolInfo, err := selfSupportForSchoolInfoDb.GetSelfSupportForSchoolInfo() | |||||
if err != nil { | |||||
return | |||||
} | |||||
if selfSupportForSchoolInfo == nil { | |||||
e.OutErr(c, e.ERR, "当前学校暂未完成《一脸通行入驻》") | |||||
return | |||||
} | |||||
selfSupportForUserFaceInfoDb := db.SelfSupportForUserFaceInfoDb{} | |||||
userIdentityDb := db.UserIdentityDb{} | |||||
var data md2.CurlAlipayPlanetEcocampusApiRosterConsumeLimit | |||||
var mm []*model.SelfSupportForUserConsumeLimit | |||||
var userIdentityIds []int | |||||
now := time.Now() | |||||
for _, v := range req { | |||||
selfSupportForUserFaceInfoDb.Set(v.UserIdentityId) | |||||
userIdentityDb.Set(0) | |||||
faceInfo, err := selfSupportForUserFaceInfoDb.GetSelfSupportForUserFaceInfo() | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | |||||
return | |||||
} | |||||
if faceInfo == nil { | |||||
e.OutErr(c, e.ERR_NO_DATA, "用户【"+utils.IntToStr(v.UserIdentityId)+"】身份未查询到一脸通行相关数据") | |||||
return | |||||
} | |||||
identity, err := userIdentityDb.GetUserIdentity(v.UserIdentityId) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | |||||
return | |||||
} | |||||
if identity == nil { | |||||
e.OutErr(c, e.ERR_NO_DATA, "用户【"+utils.IntToStr(v.UserIdentityId)+"】身份未查询到") | |||||
return | |||||
} | |||||
data.SchoolCode = selfSupportForSchoolInfo.SchoolCode | |||||
data.SchoolName = selfSupportForSchoolInfo.SchoolName | |||||
data.ConsumeLimitSyncInfo = append(data.ConsumeLimitSyncInfo, md2.ConsumeLimitSyncInfo{ | |||||
FaceUid: faceInfo.UserId, | |||||
OutRosterCode: utils.IntToStr(v.UserIdentityId), | |||||
RosterName: identity.Name, | |||||
DailyConsumeLimit: v.DailyConsumeLimit, | |||||
DailyConsumeLimitSwitch: v.DailyConsumeLimitSwitch, | |||||
SingleConsumeLimit: v.SingleConsumeLimit, | |||||
SingleConsumeLimitSwitch: v.SingleConsumeLimitSwitch, | |||||
DailyConsumeNumber: v.DailyConsumeNumber, | |||||
DailyConsumeNumberSwitch: v.DailyConsumeNumberSwitch, | |||||
}) | |||||
mm = append(mm, &model.SelfSupportForUserConsumeLimit{ | |||||
EnterpriseId: enterpriseId, | |||||
UserIdentityId: v.UserIdentityId, | |||||
DailyConsumeLimit: v.DailyConsumeLimit, | |||||
DailyConsumeLimitSwitch: v.DailyConsumeLimitSwitch, | |||||
SingleConsumeLimit: v.SingleConsumeLimit, | |||||
SingleConsumeLimitSwitch: v.SingleConsumeLimitSwitch, | |||||
DailyConsumeNumber: v.DailyConsumeNumber, | |||||
DailyConsumeNumberSwitch: v.DailyConsumeNumberSwitch, | |||||
CreateAt: now.Format("2006-01-02 15:04:05"), | |||||
UpdateAt: now.Format("2006-01-02 15:04:05"), | |||||
}) | |||||
userIdentityIds = append(userIdentityIds, v.UserIdentityId) | |||||
} | |||||
err, resp := svc.CurlAlipayPlanetEcocampusApiRosterConsumeLimit(data) | |||||
fmt.Println(">>>>>>>>>>>>>>>>>!!!<<<<<<<<<<<<<<<<", data, err) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR, err.Error()) | |||||
return | |||||
} | |||||
//TODO::记录到表中 | |||||
_, err = db.Db.In("user_identity_id", userIdentityIds).Delete(model.SelfSupportForUserConsumeLimit{}) | |||||
if err != nil { | |||||
return | |||||
} | |||||
selfSupportForUserConsumeLimitDb := db.SelfSupportForUserConsumeLimitDb{} | |||||
selfSupportForUserConsumeLimitDb.Set(0) | |||||
_, err = selfSupportForUserConsumeLimitDb.BatchAdd(mm) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR, err.Error()) | |||||
return | |||||
} | |||||
e.OutSuc(c, resp, nil) | |||||
return | |||||
} | |||||
func SelfSupportForSchoolConsumeLimitList(c *gin.Context) { | |||||
var req md.SelfSupportForSchoolConsumeLimitListReq | |||||
err := c.ShouldBindJSON(&req) | |||||
if err != nil { | |||||
err = validate.HandleValidateErr(err) | |||||
err1 := err.(e.E) | |||||
e.OutErr(c, err1.Code, err1.Error()) | |||||
return | |||||
} | |||||
var classWithUserIdentityIdsOne []int | |||||
var classWithUserIdentityIdsTwo []int | |||||
classWithUserDb := db.ClassWithUserDb{} | |||||
classWithUserDb.Set() | |||||
if req.ClassId != 0 { | |||||
classWithUsers, err2 := classWithUserDb.FindUserIdentity(req.ClassId) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
} | |||||
for _, v := range *classWithUsers { | |||||
classWithUserIdentityIdsOne = append(classWithUserIdentityIdsOne, v.UserIdentityId) | |||||
} | |||||
} | |||||
if req.GradeId != 0 { | |||||
classDb := db.ClassDb{} | |||||
classDb.Set(req.GradeId) | |||||
classes, err3 := classDb.FindClass() | |||||
if err3 != nil { | |||||
e.OutErr(c, e.ERR, err3.Error()) | |||||
return | |||||
} | |||||
var classesId []int | |||||
for _, v := range *classes { | |||||
classesId = append(classesId, v.Id) | |||||
} | |||||
classWithUsers, err4 := classWithUserDb.FindUserIdentity(classesId) | |||||
if err4 != nil { | |||||
e.OutErr(c, e.ERR, err4.Error()) | |||||
return | |||||
} | |||||
for _, v := range *classWithUsers { | |||||
classWithUserIdentityIdsTwo = append(classWithUserIdentityIdsTwo, v.UserIdentityId) | |||||
} | |||||
} | |||||
sess := db.Db.Where("user_identity.enterprise_id =?", req.EnterpriseId). | |||||
Desc("self_support_for_user_consume_limit.id") | |||||
if req.IsTeacher != 0 { | |||||
if req.IsTeacher == 1 { | |||||
sess.And("user_identity.identity =?", enum.UserIdentityForCentralKitchenForTeacher) | |||||
} | |||||
if req.IsTeacher == 2 { | |||||
sess.And("user_identity.identity !=?", enum.UserIdentityForCentralKitchenForTeacher) | |||||
} | |||||
} | |||||
if req.DailyConsumeLimit != "" { | |||||
sess.And("self_support_for_user_consume_limit.daily_consume_limit = ?", req.DailyConsumeLimit) | |||||
} | |||||
if req.DailyConsumeLimitSwitch != "" { | |||||
sess.And("self_support_for_user_consume_limit.daily_consume_limit_switch = ?", req.DailyConsumeLimitSwitch) | |||||
} | |||||
if req.SingleConsumeLimit != "" { | |||||
sess.And("self_support_for_user_consume_limit.single_consume_limit = ?", req.SingleConsumeLimit) | |||||
} | |||||
if req.SingleConsumeLimitSwitch != "" { | |||||
sess.And("self_support_for_user_consume_limit.single_consume_limit_switch = ?", req.SingleConsumeLimitSwitch) | |||||
} | |||||
if req.DailyConsumeNumber != "" { | |||||
sess.And("self_support_for_user_consume_limit.daily_consume_number = ?", req.DailyConsumeNumber) | |||||
} | |||||
if req.DailyConsumeNumberSwitch != "" { | |||||
sess.And("self_support_for_user_consume_limit.daily_consume_number_switch = ?", req.DailyConsumeNumberSwitch) | |||||
} | |||||
if req.Name != "" { | |||||
sess.And("user_identity.name like ?", "%"+req.Name+"%") | |||||
} | |||||
if req.Phone != "" { | |||||
sess.And("user.phone like ?", "%"+req.Phone+"%") | |||||
} | |||||
if len(classWithUserIdentityIdsOne) > 0 { | |||||
sess.In("user_identity.id", classWithUserIdentityIdsOne) | |||||
} | |||||
if len(classWithUserIdentityIdsTwo) > 0 { | |||||
sess.In("user_identity.id", classWithUserIdentityIdsTwo) | |||||
} | |||||
var m []*db.SelfSupportForUserConsumeLimitWithUserIdentity | |||||
count, err := sess. | |||||
Join("LEFT", "self_support_for_user_consume_limit", "user_identity.id = self_support_for_user_consume_limit.user_identity_id"). | |||||
Join("LEFT", "user", "user.id = user_identity.uid"). | |||||
Join("LEFT", "class_with_user", "class_with_user.user_identity_id = user_identity.id"). | |||||
Join("LEFT", "class", "class_with_user.class_id = class.id"). | |||||
Join("LEFT", "grade", "class.grade_id = grade.id"). | |||||
Limit(req.Limit, (req.Page-1)*req.Limit).FindAndCount(&m) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | |||||
return | |||||
} | |||||
var list []md.SelfSupportForSchoolConsumeLimitListResp | |||||
for _, v := range m { | |||||
var dailyConsumeLimitSwitch, singleConsumeLimitSwitch, dailyConsumeNumberSwitch = "off", "off", "off" | |||||
if v.SelfSupportForUserConsumeLimit.DailyConsumeLimitSwitch != "" { | |||||
dailyConsumeLimitSwitch = v.SelfSupportForUserConsumeLimit.DailyConsumeLimitSwitch | |||||
} | |||||
if v.SelfSupportForUserConsumeLimit.SingleConsumeLimitSwitch != "" { | |||||
singleConsumeLimitSwitch = v.SelfSupportForUserConsumeLimit.SingleConsumeLimitSwitch | |||||
} | |||||
if v.SelfSupportForUserConsumeLimit.DailyConsumeNumberSwitch != "" { | |||||
dailyConsumeNumberSwitch = v.SelfSupportForUserConsumeLimit.DailyConsumeNumberSwitch | |||||
} | |||||
list = append(list, md.SelfSupportForSchoolConsumeLimitListResp{ | |||||
UserIdentityId: v.UserIdentity.Id, | |||||
Name: v.UserIdentity.Name, | |||||
GradeId: v.Grade.Id, | |||||
GradeName: v.Grade.Name, | |||||
ClassId: v.Class.Id, | |||||
ClassName: v.Class.Name, | |||||
Phone: v.User.Phone, | |||||
DailyConsumeLimit: v.SelfSupportForUserConsumeLimit.DailyConsumeLimit, | |||||
DailyConsumeLimitSwitch: dailyConsumeLimitSwitch, | |||||
SingleConsumeLimit: v.SelfSupportForUserConsumeLimit.SingleConsumeLimit, | |||||
SingleConsumeLimitSwitch: singleConsumeLimitSwitch, | |||||
DailyConsumeNumber: v.SelfSupportForUserConsumeLimit.DailyConsumeNumber, | |||||
DailyConsumeNumberSwitch: dailyConsumeNumberSwitch, | |||||
}) | |||||
} | |||||
e.OutSuc(c, map[string]interface{}{ | |||||
"list": list, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"daily_consume_limit_switch_list": []map[string]string{ | |||||
{ | |||||
"name": "开启", | |||||
"value": "ON", | |||||
}, | |||||
{ | |||||
"name": "关闭", | |||||
"value": "OFF", | |||||
}, | |||||
}, | |||||
"single_consume_limit_switch_list": []map[string]string{ | |||||
{ | |||||
"name": "开启", | |||||
"value": "ON", | |||||
}, | |||||
{ | |||||
"name": "关闭", | |||||
"value": "OFF", | |||||
}, | |||||
}, | |||||
"daily_consume_number_switch_list": []map[string]string{ | |||||
{ | |||||
"name": "开启", | |||||
"value": "ON", | |||||
}, | |||||
{ | |||||
"name": "关闭", | |||||
"value": "OFF", | |||||
}, | |||||
}, | |||||
"total": count, | |||||
}, nil) | |||||
return | |||||
} | |||||
func SelfSupportForSchoolOrdListExport(c *gin.Context) { | func SelfSupportForSchoolOrdListExport(c *gin.Context) { | ||||
var req md.SelfSupportForSchoolOrdListReq | var req md.SelfSupportForSchoolOrdListReq | ||||
err := c.ShouldBindJSON(&req) | err := c.ShouldBindJSON(&req) | ||||
@@ -1070,20 +1385,38 @@ func SelfSupportForSchoolOrdListExport(c *gin.Context) { | |||||
return | return | ||||
} | } | ||||
titleList := []string{"订单编号", "支付交易号", "家长电话", "就餐人姓名", "学校名称", "年级", "班级", "总金额", "支付状态", "就餐时间", "设备编号", "消费档口"} | |||||
titleList := []string{"订单编号", "支付交易号", "家长电话", "就餐人姓名", "学校名称", "年级", "班级", "总金额", "支付状态", "就餐时间", "就餐类型", "设备编号", "消费档口"} | |||||
xlsx := excelize.NewFile() | xlsx := excelize.NewFile() | ||||
xlsx.SetSheetRow("Sheet1", "A1", &titleList) | xlsx.SetSheetRow("Sheet1", "A1", &titleList) | ||||
style, err := xlsx.NewStyle(`{"fill":{"type":"pattern","color":["FFFF00"],"pattern":1}, "alignment":{"horizontal":"center"}}`) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR, err.Error()) | |||||
return | |||||
} | |||||
xlsx.SetCellStyle("Sheet1", "A1", "M1", style) | |||||
xlsx.SetColWidth("Sheet1", "A", "B", 35) | |||||
xlsx.SetColWidth("Sheet1", "C", "E", 15) | |||||
xlsx.SetColWidth("Sheet1", "F", "I", 10) | |||||
xlsx.SetColWidth("Sheet1", "J", "K", 20) | |||||
xlsx.SetColWidth("Sheet1", "L", "L", 25) | |||||
xlsx.SetColWidth("Sheet1", "M", "M", 15) | |||||
//表头被第一行用了,只能从第二行开始 | //表头被第一行用了,只能从第二行开始 | ||||
j := 2 | j := 2 | ||||
var totalAmount = 0.00 | |||||
for _, v := range resp { | for _, v := range resp { | ||||
stateName := "支付成功" | stateName := "支付成功" | ||||
if v.OrderStatus == 1 { | if v.OrderStatus == 1 { | ||||
stateName = "待支付" | stateName = "待支付" | ||||
} | } | ||||
xlsx.SetSheetRow("Sheet1", "A"+strconv.Itoa(j), &[]interface{}{v.OutTradeNo, v.TradeNo, v.Phone, v.Name, v.EnterpriseName, v.Class, v.Grade, v.TotalPrice, stateName, v.FaceTime, v.DeviceSn, v.ShopName}) | |||||
totalAmount += utils.StrToFloat64(v.TotalPrice) | |||||
mealZh := svc3.JudgeSelfSupportForMealTime(v.FaceTime) | |||||
xlsx.SetSheetRow("Sheet1", "A"+strconv.Itoa(j), &[]interface{}{v.OutTradeNo, v.TradeNo, v.Phone, v.Name, v.EnterpriseName, v.Class, v.Grade, utils.StrToFloat64(v.TotalPrice), | |||||
stateName, v.FaceTime, mealZh, v.DeviceSn, v.ShopName}) | |||||
j++ | j++ | ||||
} | } | ||||
xlsx.SetSheetRow("Sheet1", "A"+strconv.Itoa(j), &[]interface{}{"总计:", "-", "-", "-", "-", "-", "-", totalAmount, "-", "-", "-", "-", "-"}) | |||||
c.Header("Content-Type", "application/octet-stream") | c.Header("Content-Type", "application/octet-stream") | ||||
c.Header("Content-Disposition", "attachment; filename="+"消费记录"+".xlsx") | c.Header("Content-Disposition", "attachment; filename="+"消费记录"+".xlsx") | ||||
c.Header("Content-Transfer-Encoding", "binary") | c.Header("Content-Transfer-Encoding", "binary") | ||||
@@ -1108,8 +1441,9 @@ func SelfSupportForSchoolArrearsOrdList(c *gin.Context) { | |||||
return | return | ||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": resp, | |||||
"total": total, | |||||
"list": resp, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"total": total, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -1131,6 +1465,10 @@ func SelfSupportForSchoolBlackList(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
} | } | ||||
if info == nil { | |||||
e.OutErr(c, e.ERR, "当前学校暂未完成《一脸通行入驻》") | |||||
return | |||||
} | |||||
err, resp := svc.CurlAlipayPlanetEcocampusApiRosterPageQueryBlackList(md2.CurlAlipayPlanetEcocampusApiRosterPageQueryBlackList{ | err, resp := svc.CurlAlipayPlanetEcocampusApiRosterPageQueryBlackList(md2.CurlAlipayPlanetEcocampusApiRosterPageQueryBlackList{ | ||||
SchoolCode: info.SchoolCode, | SchoolCode: info.SchoolCode, | ||||
@@ -1222,6 +1560,15 @@ func SelfSupportForSchoolEducateSceneKidsClose(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
sysCfgDb.Set() | sysCfgDb.Set() | ||||
var certType string | |||||
switch identity.CertType { | |||||
case enum.UserIdentityCertTypeForIdCard: | |||||
certType = "1" | |||||
case enum.UserIdentityCertTypeForStudentId: | |||||
certType = "X" | |||||
case enum.UserIdentityCertTypeForPassport: | |||||
certType = "A" | |||||
} | |||||
sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | ||||
err, info := svc.CurlEducateSceneKidsClose(md2.CurlEducateSceneKidsCloseReq{ | err, info := svc.CurlEducateSceneKidsClose(md2.CurlEducateSceneKidsCloseReq{ | ||||
Config: struct { | Config: struct { | ||||
@@ -1233,6 +1580,7 @@ func SelfSupportForSchoolEducateSceneKidsClose(c *gin.Context) { | |||||
AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | ||||
AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | ||||
}, | }, | ||||
CertType: certType, | |||||
CertNo: identity.IdNo, | CertNo: identity.IdNo, | ||||
SchoolStdCode: selfSupportForSchoolInfo.SchoolStdCode, | SchoolStdCode: selfSupportForSchoolInfo.SchoolStdCode, | ||||
ParentUid: selfSupportForUserFaceInfo.ParentUserId, | ParentUid: selfSupportForUserFaceInfo.ParentUserId, | ||||
@@ -35,8 +35,9 @@ func CentralKitchenForSchoolDataStatisticsList(c *gin.Context) { | |||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": list, | |||||
"total": total, | |||||
"list": list, | |||||
"total": total, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"kind": []map[string]interface{}{ | "kind": []map[string]interface{}{ | ||||
{ | { | ||||
"name": "订单列表", | "name": "订单列表", | ||||
@@ -74,6 +75,10 @@ func CentralKitchenForSchoolDataStatisticsList(c *gin.Context) { | |||||
"name": "数据对比", | "name": "数据对比", | ||||
"value": 9, | "value": 9, | ||||
}, | }, | ||||
{ | |||||
"name": "就餐数据统计表", | |||||
"value": 10, | |||||
}, | |||||
}, | }, | ||||
}, nil) | }, nil) | ||||
return | return | ||||
@@ -279,8 +284,9 @@ func SelfSupportForSchoolDataStatisticsList(c *gin.Context) { | |||||
} | } | ||||
e.OutSuc(c, map[string]interface{}{ | e.OutSuc(c, map[string]interface{}{ | ||||
"list": list, | |||||
"total": total, | |||||
"list": list, | |||||
"total": total, | |||||
"enterprise_kind_list": md.EnterpriseKindForSchool, | |||||
"kind": []map[string]interface{}{ | "kind": []map[string]interface{}{ | ||||
{ | { | ||||
"name": "教师消费统计表", | "name": "教师消费统计表", | ||||
@@ -290,6 +296,14 @@ func SelfSupportForSchoolDataStatisticsList(c *gin.Context) { | |||||
"name": "商家分餐数据统计表", | "name": "商家分餐数据统计表", | ||||
"value": 2, | "value": 2, | ||||
}, | }, | ||||
{ | |||||
"name": "学校就餐数据统计表", | |||||
"value": 3, | |||||
}, | |||||
{ | |||||
"name": "设备就餐数据统计表", | |||||
"value": 4, | |||||
}, | |||||
}, | }, | ||||
}, nil) | }, nil) | ||||
return | return | ||||
@@ -50,26 +50,15 @@ func EnterpriseList(c *gin.Context) { | |||||
"value": enum.EnterpriseStateForFreeze, | "value": enum.EnterpriseStateForFreeze, | ||||
}, | }, | ||||
}, | }, | ||||
"kind": []map[string]interface{}{ | |||||
"kind_by_mode": md.EnterpriseKindByMode, | |||||
"pvd": []map[string]interface{}{ | |||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForSchool, | |||||
"name": enum.EnterprisePvd(enum.EnterprisePvdForOnlinePayment).String(), | |||||
"value": enum.EnterprisePvdForOnlinePayment, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForFactory, | |||||
}, | |||||
{ | |||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForSchool).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForSchool, | |||||
}, | |||||
{ | |||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForFactory).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForFactory, | |||||
}, | |||||
{ | |||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByNursingHome).String(), | |||||
"value": enum.EnterprisePvdByNursingHome, | |||||
"name": enum.EnterprisePvd(enum.EnterprisePvdForFaceScanPayment).String(), | |||||
"value": enum.EnterprisePvdForFaceScanPayment, | |||||
}, | }, | ||||
}, | }, | ||||
}, nil) | }, nil) | ||||
@@ -85,7 +74,8 @@ func Detail(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
} | } | ||||
if enterprise.Kind == enum.EnterprisePvdBySelfSupportForSchool { | |||||
if enterprise.Pvd == enum.EnterprisePvdForFaceScanPayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
detail, err := svc.EnterpriseDetailV2(utils.StrToInt(enterpriseId)) | detail, err := svc.EnterpriseDetailV2(utils.StrToInt(enterpriseId)) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
@@ -94,6 +84,7 @@ func Detail(c *gin.Context) { | |||||
e.OutSuc(c, detail, nil) | e.OutSuc(c, detail, nil) | ||||
return | return | ||||
} | } | ||||
detail, err := svc.EnterpriseDetail(utils.StrToInt(enterpriseId)) | detail, err := svc.EnterpriseDetail(utils.StrToInt(enterpriseId)) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
@@ -201,13 +192,14 @@ func EnterpriseAdd(c *gin.Context) { | |||||
enterpriseDb := db.EnterpriseDb{} | enterpriseDb := db.EnterpriseDb{} | ||||
enterpriseDb.Set() | enterpriseDb.Set() | ||||
now := time.Now() | now := time.Now() | ||||
var pvd = 2 | |||||
if req.Kind == enum.EnterprisePvdByCentralKitchenForSchool || req.Kind == enum.EnterprisePvdByCentralKitchenForFactory { | |||||
pvd = 1 | |||||
} | |||||
//var pvd = 2 | |||||
//if req.Kind == enum.EnterpriseKindByCentralKitchenForSchool || req.Kind == enum.EnterpriseKindByCentralKitchenForFactory { | |||||
// pvd = 1 | |||||
//} | |||||
enterprise := model.Enterprise{ | enterprise := model.Enterprise{ | ||||
Name: req.Name, | Name: req.Name, | ||||
Pvd: int32(pvd), | |||||
Pvd: req.Pvd, | |||||
Mode: req.Mode, | |||||
Kind: req.Kind, | Kind: req.Kind, | ||||
CompanyId: req.CompanyId, | CompanyId: req.CompanyId, | ||||
State: enum2.CompanyStateForNormal, | State: enum2.CompanyStateForNormal, | ||||
@@ -220,7 +212,7 @@ func EnterpriseAdd(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
} | } | ||||
if req.Kind == enum.EnterprisePvdByCentralKitchenForSchool { | |||||
if req.Pvd == enum.EnterprisePvdForOnlinePayment && req.Mode == enum.EnterpriseModeForSchool { | |||||
//新增 `central_kitchen_for_school_set` && `central_kitchen_for_school_with_spec` | //新增 `central_kitchen_for_school_set` && `central_kitchen_for_school_with_spec` | ||||
centralKitchenForSchoolSetDb := db.CentralKitchenForSchoolSetDb{} | centralKitchenForSchoolSetDb := db.CentralKitchenForSchoolSetDb{} | ||||
centralKitchenForSchoolSetDb.Set(enterpriseId) | centralKitchenForSchoolSetDb.Set(enterpriseId) | ||||
@@ -254,7 +246,8 @@ func EnterpriseAdd(c *gin.Context) { | |||||
UpdateAt: now.Format("2006-01-02 15:04:05"), | UpdateAt: now.Format("2006-01-02 15:04:05"), | ||||
}) | }) | ||||
} | } | ||||
if req.Kind == enum.EnterprisePvdByNursingHome { | |||||
if req.Kind == enum.EnterpriseKindByNursingHome { | |||||
//新增 `nursing_home_set` && `nursing_home_with_spec` | //新增 `nursing_home_set` && `nursing_home_with_spec` | ||||
nursingHomeSetDb := db.NursingHomeSetDb{} | nursingHomeSetDb := db.NursingHomeSetDb{} | ||||
nursingHomeSetDb.Set(enterpriseId) | nursingHomeSetDb.Set(enterpriseId) | ||||
@@ -325,19 +318,13 @@ func CentralKitchenForSchoolUpdate(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | ||||
return | return | ||||
} | } | ||||
var pvd = 2 | |||||
if req.Kind == enum.EnterprisePvdByCentralKitchenForSchool || req.Kind == enum.EnterprisePvdByCentralKitchenForFactory || req.Kind == enum.EnterprisePvdByNursingHome { | |||||
pvd = 1 | |||||
} | |||||
now := time.Now() | now := time.Now() | ||||
enterprise.Name = req.Name | enterprise.Name = req.Name | ||||
enterprise.Memo = req.Memo | enterprise.Memo = req.Memo | ||||
enterprise.Pvd = int32(pvd) | |||||
enterprise.Kind = req.Kind | |||||
enterprise.CompanyId = req.CompanyId | enterprise.CompanyId = req.CompanyId | ||||
enterprise.UpdateAt = now.Format("2006-01-02 15:04:05") | enterprise.UpdateAt = now.Format("2006-01-02 15:04:05") | ||||
_, err = enterpriseDb.EnterpriseUpdate(enterprise, "name", "memo", "pvd", "kind", "company_id", "update_at") | |||||
_, err = enterpriseDb.EnterpriseUpdate(enterprise, "name", "memo", "company_id", "update_at") | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -513,19 +500,13 @@ func SelfSupportForSchoolUpdate(c *gin.Context) { | |||||
e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | e.OutErr(c, e.ERR_NO_DATA, "未查询到对应记录") | ||||
return | return | ||||
} | } | ||||
var pvd = 2 | |||||
if req.Kind == enum.EnterprisePvdByCentralKitchenForSchool || req.Kind == enum.EnterprisePvdByCentralKitchenForFactory || req.Kind == enum.EnterprisePvdByNursingHome { | |||||
pvd = 1 | |||||
} | |||||
now := time.Now() | now := time.Now() | ||||
enterprise.Name = req.Name | enterprise.Name = req.Name | ||||
enterprise.Memo = req.Memo | enterprise.Memo = req.Memo | ||||
enterprise.Pvd = int32(pvd) | |||||
enterprise.Kind = req.Kind | |||||
enterprise.CompanyId = req.CompanyId | enterprise.CompanyId = req.CompanyId | ||||
enterprise.UpdateAt = now.Format("2006-01-02 15:04:05") | enterprise.UpdateAt = now.Format("2006-01-02 15:04:05") | ||||
_, err = enterpriseDb.EnterpriseUpdate(enterprise, "name", "memo", "pvd", "kind", "company_id", "update_at") | |||||
_, err = enterpriseDb.EnterpriseUpdate(enterprise, "name", "memo", "company_id", "update_at") | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -49,16 +49,16 @@ func HomePageIndex(c *gin.Context) { | |||||
var totalCentralKitchenForSchoolNums, totalCentralKitchenForFactoryNums, totalSelfSupportForSchoolNums, totalSelfSupportForFactoryNums int | var totalCentralKitchenForSchoolNums, totalCentralKitchenForFactoryNums, totalSelfSupportForSchoolNums, totalSelfSupportForFactoryNums int | ||||
if mapArr3 != nil { | if mapArr3 != nil { | ||||
for _, v := range mapArr3 { | for _, v := range mapArr3 { | ||||
if v["kind"] == utils.IntToStr(enum.EnterprisePvdByCentralKitchenForSchool) { | |||||
if v["kind"] == utils.IntToStr(enum.EnterpriseKindByCentralKitchenForSchool) { | |||||
totalCentralKitchenForSchoolNums = utils.StrToInt(v["total"]) | totalCentralKitchenForSchoolNums = utils.StrToInt(v["total"]) | ||||
} | } | ||||
if v["kind"] == utils.IntToStr(enum.EnterprisePvdByCentralKitchenForFactory) { | |||||
if v["kind"] == utils.IntToStr(enum.EnterpriseKindByCentralKitchenForFactory) { | |||||
totalCentralKitchenForFactoryNums = utils.StrToInt(v["total"]) | totalCentralKitchenForFactoryNums = utils.StrToInt(v["total"]) | ||||
} | } | ||||
if v["kind"] == utils.IntToStr(enum.EnterprisePvdBySelfSupportForSchool) { | |||||
if v["kind"] == utils.IntToStr(enum.EnterpriseKindBySelfSupportForSchool) { | |||||
totalSelfSupportForSchoolNums = utils.StrToInt(v["total"]) | totalSelfSupportForSchoolNums = utils.StrToInt(v["total"]) | ||||
} | } | ||||
if v["kind"] == utils.IntToStr(enum.EnterprisePvdBySelfSupportForFactory) { | |||||
if v["kind"] == utils.IntToStr(enum.EnterpriseKindBySelfSupportForFactory) { | |||||
totalSelfSupportForFactoryNums = utils.StrToInt(v["total"]) | totalSelfSupportForFactoryNums = utils.StrToInt(v["total"]) | ||||
} | } | ||||
} | } | ||||
@@ -23,17 +23,39 @@ func SetCenter(c *gin.Context) { | |||||
sysCfgDb.SysCfgUpdate(enum.AdministratorContactInfo, req.AdministratorContactInfo) | sysCfgDb.SysCfgUpdate(enum.AdministratorContactInfo, req.AdministratorContactInfo) | ||||
sysCfgDb.SysCfgUpdate(enum.CentralKitchenForSchoolReserveMealTime, req.CentralKitchenForSchoolReserveMealTime) | sysCfgDb.SysCfgUpdate(enum.CentralKitchenForSchoolReserveMealTime, req.CentralKitchenForSchoolReserveMealTime) | ||||
sysCfgDb.SysCfgUpdate(enum.CentralKitchenForSchoolCancelMealTime, req.CentralKitchenForSchoolCancelMealTime) | sysCfgDb.SysCfgUpdate(enum.CentralKitchenForSchoolCancelMealTime, req.CentralKitchenForSchoolCancelMealTime) | ||||
e.OutSuc(c, "success", nil) | |||||
return | |||||
} | |||||
func GetCenter(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | |||||
sysCfgDb.Set() | |||||
res := sysCfgDb.SysCfgFindWithDb(enum.AdministratorContactInfo, enum.CentralKitchenForSchoolReserveMealTime, enum.CentralKitchenForSchoolCancelMealTime) | |||||
e.OutSuc(c, res, nil) | |||||
return | |||||
} | |||||
func SetForNursingHome(c *gin.Context) { | |||||
var req md.SetCenterReqForNursingHome | |||||
err := c.ShouldBindJSON(&req) | |||||
if err != nil { | |||||
err = validate.HandleValidateErr(err) | |||||
err1 := err.(e.E) | |||||
e.OutErr(c, err1.Code, err1.Error()) | |||||
return | |||||
} | |||||
sysCfgDb := db.SysCfgDb{} | |||||
sysCfgDb.Set() | |||||
sysCfgDb.SysCfgUpdate(enum.NursingHomeReserveMealTime, req.NursingHomeReserveMealTime) | sysCfgDb.SysCfgUpdate(enum.NursingHomeReserveMealTime, req.NursingHomeReserveMealTime) | ||||
sysCfgDb.SysCfgUpdate(enum.NursingHomeCancelMealTime, req.NursingHomeCancelMealTime) | sysCfgDb.SysCfgUpdate(enum.NursingHomeCancelMealTime, req.NursingHomeCancelMealTime) | ||||
e.OutSuc(c, "success", nil) | e.OutSuc(c, "success", nil) | ||||
return | return | ||||
} | } | ||||
func GetCenter(c *gin.Context) { | |||||
func GetForNursingHome(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
sysCfgDb.Set() | sysCfgDb.Set() | ||||
res := sysCfgDb.SysCfgFindWithDb(enum.AdministratorContactInfo, enum.CentralKitchenForSchoolReserveMealTime, enum.CentralKitchenForSchoolCancelMealTime, | |||||
enum.NursingHomeReserveMealTime, enum.NursingHomeCancelMealTime) | |||||
res := sysCfgDb.SysCfgFindWithDb(enum.NursingHomeReserveMealTime, enum.NursingHomeCancelMealTime) | |||||
e.OutSuc(c, res, nil) | e.OutSuc(c, res, nil) | ||||
return | return | ||||
} | } |
@@ -57,26 +57,40 @@ func UserList(c *gin.Context) { | |||||
}, | }, | ||||
"enterprise_kind_list": []map[string]interface{}{ | "enterprise_kind_list": []map[string]interface{}{ | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByCentralKitchenForSchool), | |||||
"value": enum.EnterprisePvdByCentralKitchenForSchool, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByCentralKitchenForSchool), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByCentralKitchenForFactory), | |||||
"value": enum.EnterprisePvdByCentralKitchenForFactory, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByCentralKitchenForFactory), | |||||
"value": enum.EnterpriseKindByCentralKitchenForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdBySelfSupportForSchool), | |||||
"value": enum.EnterprisePvdBySelfSupportForSchool, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindBySelfSupportForSchool), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdBySelfSupportForFactory), | |||||
"value": enum.EnterprisePvdBySelfSupportForFactory, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindBySelfSupportForFactory), | |||||
"value": enum.EnterpriseKindBySelfSupportForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByNursingHome), | |||||
"value": enum.EnterprisePvdByNursingHome, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByNursingHome), | |||||
"value": enum.EnterpriseKindByNursingHome, | |||||
}, | }, | ||||
}, | }, | ||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
@@ -3,6 +3,8 @@ package md | |||||
type CentralKitchenForSchoolInfoResp struct { | type CentralKitchenForSchoolInfoResp struct { | ||||
Name string `json:"name" label:"名称"` | Name string `json:"name" label:"名称"` | ||||
Memo string `json:"memo" label:"备注"` | Memo string `json:"memo" label:"备注"` | ||||
Mode string `json:"mode" label:"模式"` | |||||
Pvd string `json:"pvd" label:"场景"` | |||||
Kind string `json:"kind" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂)"` | Kind string `json:"kind" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂)"` | ||||
State string `json:"state" label:"状态(1:正常 2:冻结)"` | State string `json:"state" label:"状态(1:正常 2:冻结)"` | ||||
IsOpenTeacherReportMeal int `json:"is_open_teacher_report_meal" label:"教师报餐(1:开启 2:关闭)"` | IsOpenTeacherReportMeal int `json:"is_open_teacher_report_meal" label:"教师报餐(1:开启 2:关闭)"` | ||||
@@ -10,6 +10,7 @@ type CentralKitchenForSchoolExportRecordsListReq struct { | |||||
type CentralKitchenForSchoolDataStatisticsExportReq struct { | type CentralKitchenForSchoolDataStatisticsExportReq struct { | ||||
Kinds []int `json:"kinds" binding:"required" label:"导出类型"` | Kinds []int `json:"kinds" binding:"required" label:"导出类型"` | ||||
EnterPriseKind int `json:"enterprise_kind" binding:"required" label:"校企类型"` | |||||
StartDate string `json:"start_date" binding:"required" label:"起始时间"` | StartDate string `json:"start_date" binding:"required" label:"起始时间"` | ||||
EndDate string `json:"end_date" binding:"required" label:"截止时间"` | EndDate string `json:"end_date" binding:"required" label:"截止时间"` | ||||
MealKindList []int `json:"meal_kind_list" label:"就餐类型(1:早餐 2:午餐 3:晚餐)"` | MealKindList []int `json:"meal_kind_list" label:"就餐类型(1:早餐 2:午餐 3:晚餐)"` | ||||
@@ -22,6 +23,7 @@ type CentralKitchenForSchoolDataStatisticsContrastReq struct { | |||||
Date2 []string `json:"date_2" binding:"required" label:"截止时间"` | Date2 []string `json:"date_2" binding:"required" label:"截止时间"` | ||||
MealKindList []int `json:"meal_kind_list" label:"就餐类型(1:早餐 2:午餐 3:晚餐)"` | MealKindList []int `json:"meal_kind_list" label:"就餐类型(1:早餐 2:午餐 3:晚餐)"` | ||||
EnterpriseId int `json:"enterprise_id" label:"校企id"` | EnterpriseId int `json:"enterprise_id" label:"校企id"` | ||||
EnterPriseKind int `json:"enterprise_kind" binding:"required" label:"校企类型"` | |||||
EnterpriseName string `json:"enterprise_name" label:"校企名称"` | EnterpriseName string `json:"enterprise_name" label:"校企名称"` | ||||
} | } | ||||
@@ -55,4 +57,5 @@ type SelfSupportForSchoolDataStatisticsExportReq struct { | |||||
EndDate string `json:"end_date" binding:"required" label:"截止时间"` | EndDate string `json:"end_date" binding:"required" label:"截止时间"` | ||||
EnterpriseId int `json:"enterprise_id" label:"校企id"` | EnterpriseId int `json:"enterprise_id" label:"校企id"` | ||||
EnterpriseName string `json:"enterprise_name" label:"校企名称"` | EnterpriseName string `json:"enterprise_name" label:"校企名称"` | ||||
EnterPriseKind int `json:"enterprise_kind" binding:"required" label:"校企类型"` | |||||
} | } |
@@ -1,10 +1,14 @@ | |||||
package md | package md | ||||
import "applet/app/db/model" | |||||
import ( | |||||
"applet/app/db/model" | |||||
"applet/app/enum" | |||||
) | |||||
type EnterpriseAddReq struct { | type EnterpriseAddReq struct { | ||||
Name string `json:"name" binding:"required" label:"名称"` | Name string `json:"name" binding:"required" label:"名称"` | ||||
Pvd int32 `json:"pvd" label:"场景"` | |||||
Pvd int32 `json:"pvd" label:"消费场景"` | |||||
Mode int32 `json:"mode" label:"模式(1:学校 2:工厂 3:养老院)"` | |||||
Kind int32 `json:"kind" binding:"required" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)"` | Kind int32 `json:"kind" binding:"required" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)"` | ||||
CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | ||||
Memo string `json:"memo" label:"备注"` | Memo string `json:"memo" label:"备注"` | ||||
@@ -13,8 +17,6 @@ type EnterpriseAddReq struct { | |||||
type CentralKitchenForSchoolUpdateReq struct { | type CentralKitchenForSchoolUpdateReq struct { | ||||
Id int `json:"id" binding:"required" label:"企业id"` | Id int `json:"id" binding:"required" label:"企业id"` | ||||
Name string `json:"name" binding:"required" label:"名称"` | Name string `json:"name" binding:"required" label:"名称"` | ||||
Pvd int32 `json:"pvd" label:"场景"` | |||||
Kind int32 `json:"kind" binding:"required" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)"` | |||||
CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | ||||
Memo string `json:"memo" label:"备注"` | Memo string `json:"memo" label:"备注"` | ||||
State int32 `json:"state" label:"状态"` | State int32 `json:"state" label:"状态"` | ||||
@@ -46,6 +48,8 @@ type EnterpriseListReq struct { | |||||
Page int `json:"page" ` | Page int `json:"page" ` | ||||
Name string `json:"name" label:"名称"` | Name string `json:"name" label:"名称"` | ||||
Kind int `json:"kind" label:"种类"` | Kind int `json:"kind" label:"种类"` | ||||
Pvd int `json:"pvd" label:"场景"` | |||||
Mode int `json:"mode" label:"模式"` | |||||
} | } | ||||
type EnterpriseDetailResp struct { | type EnterpriseDetailResp struct { | ||||
@@ -123,3 +127,55 @@ type CentralKitchenForSchoolStudentAdmissionByClass struct { | |||||
GradeId int `json:"grade_id" binding:"required" label:"年级id"` | GradeId int `json:"grade_id" binding:"required" label:"年级id"` | ||||
ClassIds []int `json:"class_ids" label:"班级id"` | ClassIds []int `json:"class_ids" label:"班级id"` | ||||
} | } | ||||
var EnterpriseKindByMode = []map[string]interface{}{ | |||||
{ | |||||
"name": enum.EnterpriseMode(enum.EnterpriseModeForSchool).String(), | |||||
"value": enum.EnterpriseModeForSchool, | |||||
"kind_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForSchool).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | |||||
}, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseMode(enum.EnterpriseModeForFactory).String(), | |||||
"value": enum.EnterpriseModeForFactory, | |||||
"kind_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForFactory, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForFactory).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForFactory, | |||||
}, | |||||
}, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseMode(enum.EnterpriseModeForNursingHome).String(), | |||||
"value": enum.EnterpriseModeForNursingHome, | |||||
"kind_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByNursingHome).String(), | |||||
"value": enum.EnterpriseKindByNursingHome, | |||||
}, | |||||
}, | |||||
}, | |||||
} | |||||
var EnterpriseKindForSchool = []map[string]interface{}{ | |||||
{ | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByCentralKitchenForSchool), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindBySelfSupportForSchool), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | |||||
} |
@@ -24,6 +24,7 @@ type EnterpriseUserListByCentralKitchenForSchoolStruct struct { | |||||
Id int `json:"id" label:"身份id"` | Id int `json:"id" label:"身份id"` | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
SchoolName string `json:"school_name" label:"学校名"` | SchoolName string `json:"school_name" label:"学校名"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
@@ -34,9 +35,10 @@ type EnterpriseUserListByCentralKitchenForSchoolStruct struct { | |||||
} | } | ||||
type EnterpriseUserListByCentralKitchenForSchoolResp struct { | type EnterpriseUserListByCentralKitchenForSchoolResp struct { | ||||
List []EnterpriseUserListByCentralKitchenForSchoolStruct `json:"list"` | |||||
Total int64 `json:"total"` | |||||
UserIdentityKindList interface{} `json:"user_identity_kind_list"` | |||||
List []EnterpriseUserListByCentralKitchenForSchoolStruct `json:"list"` | |||||
Total int64 `json:"total"` | |||||
UserIdentityKindList interface{} `json:"user_identity_kind_list"` | |||||
UserIdentityCertTypeList interface{} `json:"user_identity_cert_type_list"` | |||||
} | } | ||||
type CentralKitchenForSchoolUserUpdateReq struct { | type CentralKitchenForSchoolUserUpdateReq struct { | ||||
@@ -47,6 +49,7 @@ type CentralKitchenForSchoolUserUpdateReq struct { | |||||
BindUserIdentities []struct { | BindUserIdentities []struct { | ||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
GradeId int `json:"grade_id" label:"年级"` | GradeId int `json:"grade_id" label:"年级"` | ||||
ClassId int `json:"class_id" label:"班级"` | ClassId int `json:"class_id" label:"班级"` | ||||
@@ -61,6 +64,7 @@ type CentralKitchenForSchoolUserUpdateReqV2 struct { | |||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
GradeId int `json:"grade_id" label:"年级"` | GradeId int `json:"grade_id" label:"年级"` | ||||
ClassId int `json:"class_id" label:"班级"` | ClassId int `json:"class_id" label:"班级"` | ||||
@@ -93,6 +97,7 @@ type CentralKitchenForSchoolTeacherListReq struct { | |||||
type CentralKitchenForSchoolStudentListResp struct { | type CentralKitchenForSchoolStudentListResp struct { | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
ParentPhone string `json:"parent_phone" label:"家长电话"` | ParentPhone string `json:"parent_phone" label:"家长电话"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
@@ -113,6 +118,7 @@ type CentralKitchenForSchoolTeacherUpdateReq struct { | |||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | ||||
UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
} | } | ||||
@@ -230,34 +236,36 @@ type CentralKitchenForSchoolOrdListResp struct { | |||||
} | } | ||||
type CentralKitchenForSchoolOrdListReq struct { | type CentralKitchenForSchoolOrdListReq struct { | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
Kind int `json:"kind" label:"预定类型"` | |||||
Sate int `json:"state" label:"支付状态"` | |||||
OrdSate int `json:"ord_state" label:"订单状态"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
Phone string `json:"phone" label:"家长联系电话"` | |||||
StartDate string `json:"start_date" label:"开始时间"` | |||||
EndDate string `json:"end_date" label:"截止时间"` | |||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
Kind int `json:"kind" label:"预定类型"` | |||||
EnterPriseKind int `json:"enterprise_kind" label:"校企类型"` | |||||
Sate int `json:"state" label:"支付状态"` | |||||
OrdSate int `json:"ord_state" label:"订单状态"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
Phone string `json:"phone" label:"家长联系电话"` | |||||
StartDate string `json:"start_date" label:"开始时间"` | |||||
EndDate string `json:"end_date" label:"截止时间"` | |||||
} | } | ||||
type CentralKitchenForSchoolReserveListReq struct { | type CentralKitchenForSchoolReserveListReq struct { | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
Kind int `json:"kind" label:"预定类型"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
Phone string `json:"phone" label:"家长联系电话"` | |||||
StartDate string `json:"start_date" label:"开始时间"` | |||||
EndDate string `json:"end_date" label:"截止时间"` | |||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
Kind int `json:"kind" label:"预定类型"` | |||||
EnterPriseKind int `json:"enterprise_kind" label:"校企类型"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
Phone string `json:"phone" label:"家长联系电话"` | |||||
StartDate string `json:"start_date" label:"开始时间"` | |||||
EndDate string `json:"end_date" label:"截止时间"` | |||||
} | } | ||||
type CentralKitchenForSchoolReserveUpdateStudentReq struct { | type CentralKitchenForSchoolReserveUpdateStudentReq struct { | ||||
@@ -298,6 +306,7 @@ type SelfSupportForSchoolUserUpdateReq struct { | |||||
BindUserIdentities []struct { | BindUserIdentities []struct { | ||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
GradeId int `json:"grade_id" label:"年级"` | GradeId int `json:"grade_id" label:"年级"` | ||||
ClassId int `json:"class_id" label:"班级"` | ClassId int `json:"class_id" label:"班级"` | ||||
@@ -321,7 +330,8 @@ type SelfSupportForSchoolStudentListReq struct { | |||||
} | } | ||||
type SelfSupportForSchoolStudentListResp struct { | type SelfSupportForSchoolStudentListResp struct { | ||||
IdNo string `json:"id_no" label:"身份证号"` | |||||
IdNo string `json:"id_no" label:"证件号"` | |||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
ParentPhone string `json:"parent_phone" label:"家长电话"` | ParentPhone string `json:"parent_phone" label:"家长电话"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
@@ -345,6 +355,7 @@ type SelfSupportForSchoolTeacherListReq struct { | |||||
type SelfSupportForSchoolTeacherListResp struct { | type SelfSupportForSchoolTeacherListResp struct { | ||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Phone string `json:"parent_phone" label:"电话"` | Phone string `json:"parent_phone" label:"电话"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
CollectFaceType int `json:"collect_face_type" label:"采集人脸方式(1:个采 2:集采) "` | CollectFaceType int `json:"collect_face_type" label:"采集人脸方式(1:个采 2:集采) "` | ||||
@@ -356,6 +367,7 @@ type SelfSupportForSchoolStudentUpdateReq struct { | |||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | ||||
UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型(1:身份证 2:学工号 3:护照)"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
@@ -365,6 +377,7 @@ type SelfSupportForSchoolStudentUpdateReq struct { | |||||
type SelfSupportForSchoolStudentAddReq struct { | type SelfSupportForSchoolStudentAddReq struct { | ||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型(1:身份证 2:学工号 3:护照)"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
@@ -386,6 +399,7 @@ type SelfSupportForSchoolTeacherUpdateReq struct { | |||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | ||||
UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" binding:"required" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
CollectFaceType int `json:"collect_face_type" label:"采集人脸方式(1:个采 2:集采)"` | CollectFaceType int `json:"collect_face_type" label:"采集人脸方式(1:个采 2:集采)"` | ||||
} | } | ||||
@@ -406,6 +420,7 @@ type SelfSupportForSchoolWorkerListReq struct { | |||||
type SelfSupportForSchoolWorkerListResp struct { | type SelfSupportForSchoolWorkerListResp struct { | ||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Phone string `json:"parent_phone" label:"电话"` | Phone string `json:"parent_phone" label:"电话"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
CreateAt string `json:"create_at" label:"创建时间"` | CreateAt string `json:"create_at" label:"创建时间"` | ||||
@@ -463,35 +478,82 @@ type SelfSupportForSchoolAddTeacherReq struct { | |||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | ||||
Name string `json:"name" label:"名称"` | Name string `json:"name" label:"名称"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
} | } | ||||
type SelfSupportForSchoolOrdListReq struct { | type SelfSupportForSchoolOrdListReq struct { | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
OrderStatus int `json:"order_status" label:"订单状态"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
StartDate string `json:"start_date" label:"刷脸-开始时间"` | |||||
EndDate string `json:"end_date" label:"刷脸-截止时间"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
EnterpriseKind int `json:"enterprise_kind" label:"校企类型"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
OrderStatus int `json:"order_status" label:"订单状态"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
StartDate string `json:"start_date" label:"刷脸-开始时间"` | |||||
EndDate string `json:"end_date" label:"刷脸-截止时间"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
} | |||||
type SelfSupportForSchoolConsumeLimitReq struct { | |||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | |||||
DailyConsumeLimit string `json:"daily_consume_limit" label:"单日金额上限"` | |||||
DailyConsumeLimitSwitch string `json:"daily_consume_limit_switch" label:"单日金额上限 功能开关"` | |||||
SingleConsumeLimit string `json:"single_consume_limit" label:"单笔金额上限"` | |||||
SingleConsumeLimitSwitch string `json:"single_consume_limit_switch" label:"单笔金额上限 功能开关"` | |||||
DailyConsumeNumber string `json:"daily_consume_number" label:"单日笔数上限"` | |||||
DailyConsumeNumberSwitch string `json:"daily_consume_number_switch" label:"单日笔数上限 功能开关"` | |||||
} | |||||
type SelfSupportForSchoolConsumeLimitListReq struct { | |||||
EnterpriseId int `json:"enterprise_id" binding:"required" label:"企业id"` | |||||
EnterpriseKind int `json:"enterprise_kind" label:"企业类型"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
DailyConsumeLimit string `json:"daily_consume_limit" label:"单日金额上限"` | |||||
DailyConsumeLimitSwitch string `json:"daily_consume_limit_switch" label:"单日金额上限 功能开关"` | |||||
SingleConsumeLimit string `json:"single_consume_limit" label:"单笔金额上限"` | |||||
SingleConsumeLimitSwitch string `json:"single_consume_limit_switch" label:"单笔金额上限 功能开关"` | |||||
DailyConsumeNumber string `json:"daily_consume_number" label:"单日笔数上限"` | |||||
DailyConsumeNumberSwitch string `json:"daily_consume_number_switch" label:"单日笔数上限 功能开关"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
} | |||||
type SelfSupportForSchoolConsumeLimitListResp struct { | |||||
UserIdentityId int `json:"user_identity_id" label:"用户身份id"` | |||||
Name string `json:"name" label:"姓名"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
GradeName string `json:"grade_name" label:"年级名称"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
ClassName string `json:"class_name" label:"班级名称"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
DailyConsumeLimit string `json:"daily_consume_limit" label:"单日金额上限"` | |||||
DailyConsumeLimitSwitch string `json:"daily_consume_limit_switch" label:"单日金额上限 功能开关"` | |||||
SingleConsumeLimit string `json:"single_consume_limit" label:"单笔金额上限"` | |||||
SingleConsumeLimitSwitch string `json:"single_consume_limit_switch" label:"单笔金额上限 功能开关"` | |||||
DailyConsumeNumber string `json:"daily_consume_number" label:"单日笔数上限"` | |||||
DailyConsumeNumberSwitch string `json:"daily_consume_number_switch" label:"单日笔数上限 功能开关"` | |||||
} | } | ||||
type SelfSupportForSchoolArrearsOrdListReq struct { | type SelfSupportForSchoolArrearsOrdListReq struct { | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
StartDate string `json:"start_date" label:"刷脸-开始时间"` | |||||
EndDate string `json:"end_date" label:"刷脸-截止时间"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | |||||
EnterpriseKind int `json:"enterprise_kind" label:"企业类型"` | |||||
Limit int `json:"limit" binding:"required"` | |||||
Page int `json:"page" binding:"required"` | |||||
Name string `json:"name" label:"姓名"` | |||||
Phone string `json:"phone" label:"用户电话"` | |||||
OutTradeNo string `json:"out_trade_no" label:"订单号"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | |||||
ClassId int `json:"class_id" label:"班级id"` | |||||
StartDate string `json:"start_date" label:"刷脸-开始时间"` | |||||
EndDate string `json:"end_date" label:"刷脸-截止时间"` | |||||
IsTeacher int `json:"is_teacher" label:"是否教师"` | |||||
} | } | ||||
type SelfSupportForSchoolBlackListReq struct { | type SelfSupportForSchoolBlackListReq struct { | ||||
@@ -15,11 +15,8 @@ type GradeListStructV2 struct { | |||||
type SelfSupportForSchoolUpdateReq struct { | type SelfSupportForSchoolUpdateReq struct { | ||||
Id int `json:"id" binding:"required" label:"企业id"` | Id int `json:"id" binding:"required" label:"企业id"` | ||||
Name string `json:"name" binding:"required" label:"名称"` | Name string `json:"name" binding:"required" label:"名称"` | ||||
Pvd int32 `json:"pvd" label:"场景"` | |||||
Kind int32 `json:"kind" binding:"required" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)"` | |||||
CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | CompanyId int `json:"company_id" binding:"required" label:"所属公司id"` | ||||
Memo string `json:"memo" label:"备注"` | Memo string `json:"memo" label:"备注"` | ||||
State int32 `json:"state" label:"状态"` | |||||
GradeList []struct { | GradeList []struct { | ||||
Id int `json:"id" label:"年级id"` | Id int `json:"id" label:"年级id"` | ||||
Name string `json:"name" label:"名称"` | Name string `json:"name" label:"名称"` | ||||
@@ -3,6 +3,8 @@ package md | |||||
type SelfSupportForSchoolInfoResp struct { | type SelfSupportForSchoolInfoResp struct { | ||||
Name string `json:"name" label:"名称"` | Name string `json:"name" label:"名称"` | ||||
Memo string `json:"memo" label:"备注"` | Memo string `json:"memo" label:"备注"` | ||||
Mode string `json:"mode" label:"模式"` | |||||
Pvd string `json:"pvd" label:"场景"` | |||||
Kind string `json:"kind" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂)"` | Kind string `json:"kind" label:"种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂)"` | ||||
State string `json:"state" label:"状态(1:正常 2:冻结)"` | State string `json:"state" label:"状态(1:正常 2:冻结)"` | ||||
TeacherNum int64 `json:"teacher_num" label:"教师数量"` | TeacherNum int64 `json:"teacher_num" label:"教师数量"` | ||||
@@ -4,6 +4,9 @@ type SetCenterReq struct { | |||||
AdministratorContactInfo string `json:"administrator_contact_info" binding:"required" label:"管理员联系方式"` | AdministratorContactInfo string `json:"administrator_contact_info" binding:"required" label:"管理员联系方式"` | ||||
CentralKitchenForSchoolReserveMealTime string `json:"central_kitchen_for_school_reserve_meal_time" binding:"required" label:"央厨预定用餐时间"` | CentralKitchenForSchoolReserveMealTime string `json:"central_kitchen_for_school_reserve_meal_time" binding:"required" label:"央厨预定用餐时间"` | ||||
CentralKitchenForSchoolCancelMealTime string `json:"central_kitchen_for_school_cancel_meal_time" binding:"required" label:"央厨取消用餐时间"` | CentralKitchenForSchoolCancelMealTime string `json:"central_kitchen_for_school_cancel_meal_time" binding:"required" label:"央厨取消用餐时间"` | ||||
NursingHomeReserveMealTime string `json:"nursing_home_reserve_meal_time" binding:"required" label:"养老院预定用餐时间"` | |||||
NursingHomeCancelMealTime string `json:"nursing_home_cancel_meal_time" binding:"required" label:"养老院消用餐时间"` | |||||
} | |||||
type SetCenterReqForNursingHome struct { | |||||
NursingHomeReserveMealTime string `json:"nursing_home_reserve_meal_time" binding:"required" label:"养老院预定用餐时间"` | |||||
NursingHomeCancelMealTime string `json:"nursing_home_cancel_meal_time" binding:"required" label:"养老院消用餐时间"` | |||||
} | } |
@@ -22,6 +22,7 @@ type UserList struct { | |||||
BindUserIdentity []struct { | BindUserIdentity []struct { | ||||
Id int `json:"id" label:"id"` | Id int `json:"id" label:"id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
EnterpriseName string `json:"enterprise_name" label:"企业名"` | EnterpriseName string `json:"enterprise_name" label:"企业名"` | ||||
EnterpriseKind int32 `json:"enterprise_kind" label:"企业类型"` | EnterpriseKind int32 `json:"enterprise_kind" label:"企业类型"` | ||||
@@ -51,6 +51,7 @@ func CentralKitchenForSchoolUserUpdate(req md.CentralKitchenForSchoolUserUpdateR | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForCentralKitchenForTeacher, | Identity: enum2.UserIdentityForCentralKitchenForTeacher, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -70,6 +71,7 @@ func CentralKitchenForSchoolUserUpdate(req md.CentralKitchenForSchoolUserUpdateR | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForCentralKitchenForStudent, | Identity: enum2.UserIdentityForCentralKitchenForStudent, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -107,6 +109,7 @@ func CentralKitchenForSchoolUserUpdate(req md.CentralKitchenForSchoolUserUpdateR | |||||
return errors.New("未查询到对应的身份信息记录") | return errors.New("未查询到对应的身份信息记录") | ||||
} | } | ||||
identity.IdNo = v.IdNo | identity.IdNo = v.IdNo | ||||
identity.CertType = v.CertType | |||||
identity.Name = v.Name | identity.Name = v.Name | ||||
if v.ClassId == -1 { | if v.ClassId == -1 { | ||||
//TODO::为老师身份 | //TODO::为老师身份 | ||||
@@ -185,6 +188,7 @@ func CentralKitchenForSchoolUserUpdateV2(req md.CentralKitchenForSchoolUserUpdat | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForCentralKitchenForTeacher, | Identity: enum2.UserIdentityForCentralKitchenForTeacher, | ||||
EnterpriseId: v.EnterpriseId, | EnterpriseId: v.EnterpriseId, | ||||
@@ -204,6 +208,7 @@ func CentralKitchenForSchoolUserUpdateV2(req md.CentralKitchenForSchoolUserUpdat | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForCentralKitchenForStudent, | Identity: enum2.UserIdentityForCentralKitchenForStudent, | ||||
EnterpriseId: v.EnterpriseId, | EnterpriseId: v.EnterpriseId, | ||||
@@ -242,6 +247,7 @@ func CentralKitchenForSchoolUserUpdateV2(req md.CentralKitchenForSchoolUserUpdat | |||||
} | } | ||||
identity.EnterpriseId = v.EnterpriseId | identity.EnterpriseId = v.EnterpriseId | ||||
identity.IdNo = v.IdNo | identity.IdNo = v.IdNo | ||||
identity.CertType = v.CertType | |||||
identity.Name = v.Name | identity.Name = v.Name | ||||
if v.ClassId == -1 { | if v.ClassId == -1 { | ||||
//TODO::为老师身份 | //TODO::为老师身份 | ||||
@@ -393,6 +399,7 @@ func CentralKitchenForSchoolStudentList(req md.CentralKitchenForSchoolStudentLis | |||||
for _, v := range m { | for _, v := range m { | ||||
resp = append(resp, md.CentralKitchenForSchoolStudentListResp{ | resp = append(resp, md.CentralKitchenForSchoolStudentListResp{ | ||||
IdNo: v.UserIdentity.IdNo, | IdNo: v.UserIdentity.IdNo, | ||||
CertType: v.UserIdentity.CertType, | |||||
ParentPhone: v.User.Phone, | ParentPhone: v.User.Phone, | ||||
Name: v.UserIdentity.Name, | Name: v.UserIdentity.Name, | ||||
Grade: v.Grade.Name, | Grade: v.Grade.Name, | ||||
@@ -659,6 +666,10 @@ func CentralKitchenForSchoolOrdList(req md.CentralKitchenForSchoolOrdListReq) (r | |||||
sess.And("user.phone like ?", "%"+req.Phone+"%") | sess.And("user.phone like ?", "%"+req.Phone+"%") | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
if len(classWithUserIdentityIdsOne) > 0 { | if len(classWithUserIdentityIdsOne) > 0 { | ||||
sess.In("user_identity.id", classWithUserIdentityIdsOne) | sess.In("user_identity.id", classWithUserIdentityIdsOne) | ||||
} | } | ||||
@@ -798,6 +809,10 @@ func CentralKitchenForSchoolReserveList(req md.CentralKitchenForSchoolReserveLis | |||||
if len(months) > 0 { | if len(months) > 0 { | ||||
sess.In("central_kitchen_for_school_package_ord_for_reserve.reserve_month", months) | sess.In("central_kitchen_for_school_package_ord_for_reserve.reserve_month", months) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
var m []*db.CentralKitchenForSchoolPackageOrdForReserveWithUserIdentity | var m []*db.CentralKitchenForSchoolPackageOrdForReserveWithUserIdentity | ||||
count, err = sess. | count, err = sess. | ||||
Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | ||||
@@ -71,13 +71,14 @@ func EnterpriseUserListByCentralKitchenForSchool(req md.EnterpriseUserListReq) ( | |||||
Id int `json:"id" label:"身份id"` | Id int `json:"id" label:"身份id"` | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
SchoolName string `json:"school_name" label:"学校名"` | SchoolName string `json:"school_name" label:"学校名"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
Class string `json:"class" label:"班级"` | Class string `json:"class" label:"班级"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
}{Id: v1.Id, EnterpriseId: v1.EnterpriseId, IdNo: v1.IdNo, SchoolName: "教师", Name: v1.Name, Grade: "教师", Class: "教师", GradeId: -1, ClassId: -1}) | |||||
}{Id: v1.Id, EnterpriseId: v1.EnterpriseId, IdNo: v1.IdNo, CertType: v1.CertType, SchoolName: "教师", Name: v1.Name, Grade: "教师", Class: "教师", GradeId: -1, ClassId: -1}) | |||||
temp.IsTeacher = 1 | temp.IsTeacher = 1 | ||||
} else { | } else { | ||||
data, err2 := classWithUserDb.GetInfoByUserIdentityId(v1.Id) | data, err2 := classWithUserDb.GetInfoByUserIdentityId(v1.Id) | ||||
@@ -91,17 +92,59 @@ func EnterpriseUserListByCentralKitchenForSchool(req md.EnterpriseUserListReq) ( | |||||
Id int `json:"id" label:"身份id"` | Id int `json:"id" label:"身份id"` | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
SchoolName string `json:"school_name" label:"学校名"` | SchoolName string `json:"school_name" label:"学校名"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
Class string `json:"class" label:"班级"` | Class string `json:"class" label:"班级"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
}{Id: v1.Id, EnterpriseId: v1.EnterpriseId, IdNo: data.UserIdentity.IdNo, SchoolName: data.Enterprise.Name, Name: data.UserIdentity.Name, Grade: data.Grade.Name, Class: data.Class.Name, GradeId: data.Grade.Id, ClassId: data.Class.Id}) | |||||
}{Id: v1.Id, EnterpriseId: v1.EnterpriseId, IdNo: data.UserIdentity.IdNo, CertType: data.UserIdentity.CertType, SchoolName: data.Enterprise.Name, Name: data.UserIdentity.Name, Grade: data.Grade.Name, Class: data.Class.Name, GradeId: data.Grade.Id, ClassId: data.Class.Id}) | |||||
} | } | ||||
} | } | ||||
resp.List = append(resp.List, temp) | resp.List = append(resp.List, temp) | ||||
} | } | ||||
resp.UserIdentityKindList = []map[string]interface{}{ | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForCentralKitchenForStudent), | |||||
"value": enum2.UserIdentityForCentralKitchenForStudent, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForCentralKitchenForTeacher), | |||||
"value": enum2.UserIdentityForCentralKitchenForTeacher, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForCentralKitchenForWorker), | |||||
"value": enum2.UserIdentityForCentralKitchenForWorker, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForSelfSupportForStudent), | |||||
"value": enum2.UserIdentityForSelfSupportForStudent, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForSelfSupportForTeacher), | |||||
"value": enum2.UserIdentityForSelfSupportForTeacher, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentity.String(enum2.UserIdentityForSelfSupportForWorker), | |||||
"value": enum2.UserIdentityForSelfSupportForWorker, | |||||
}, | |||||
} | |||||
resp.UserIdentityCertTypeList = []map[string]interface{}{ | |||||
{ | |||||
"name": enum2.UserIdentityCertType.String(enum2.UserIdentityCertTypeForIdCard), | |||||
"value": enum2.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentityCertType.String(enum2.UserIdentityCertTypeForStudentId), | |||||
"value": enum2.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
} | |||||
return | return | ||||
} | } | ||||
@@ -217,13 +260,14 @@ func EnterpriseUserListByCentralKitchenForSchoolV2(req md.EnterpriseUserListReq) | |||||
Id int `json:"id" label:"身份id"` | Id int `json:"id" label:"身份id"` | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
SchoolName string `json:"school_name" label:"学校名"` | SchoolName string `json:"school_name" label:"学校名"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
Class string `json:"class" label:"班级"` | Class string `json:"class" label:"班级"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
}{Id: v1.UserIdentity.Id, EnterpriseId: v1.UserIdentity.EnterpriseId, IdNo: v1.IdNo, SchoolName: v1.Enterprise.Name, Name: v1.UserIdentity.Name, Grade: "教师", Class: "教师", GradeId: -1, ClassId: -1}) | |||||
}{Id: v1.UserIdentity.Id, EnterpriseId: v1.UserIdentity.EnterpriseId, IdNo: v1.IdNo, CertType: v1.CertType, SchoolName: v1.Enterprise.Name, Name: v1.UserIdentity.Name, Grade: "教师", Class: "教师", GradeId: -1, ClassId: -1}) | |||||
temp.IsTeacher = 1 | temp.IsTeacher = 1 | ||||
} | } | ||||
if v1.Identity == enum2.UserIdentityForCentralKitchenForStudent { | if v1.Identity == enum2.UserIdentityForCentralKitchenForStudent { | ||||
@@ -231,13 +275,14 @@ func EnterpriseUserListByCentralKitchenForSchoolV2(req md.EnterpriseUserListReq) | |||||
Id int `json:"id" label:"身份id"` | Id int `json:"id" label:"身份id"` | ||||
EnterpriseId int `json:"enterprise_id" label:"企业id"` | EnterpriseId int `json:"enterprise_id" label:"企业id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
SchoolName string `json:"school_name" label:"学校名"` | SchoolName string `json:"school_name" label:"学校名"` | ||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
Grade string `json:"grade" label:"年级"` | Grade string `json:"grade" label:"年级"` | ||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
Class string `json:"class" label:"班级"` | Class string `json:"class" label:"班级"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
}{Id: v1.UserIdentity.Id, EnterpriseId: v1.UserIdentity.EnterpriseId, IdNo: v1.UserIdentity.IdNo, SchoolName: v1.Enterprise.Name, Name: v1.UserIdentity.Name, Grade: v1.Grade.Name, Class: v1.Class.Name, GradeId: v1.Grade.Id, ClassId: v1.Class.Id}) | |||||
}{Id: v1.UserIdentity.Id, EnterpriseId: v1.UserIdentity.EnterpriseId, IdNo: v1.UserIdentity.IdNo, CertType: v1.UserIdentity.CertType, SchoolName: v1.Enterprise.Name, Name: v1.UserIdentity.Name, Grade: v1.Grade.Name, Class: v1.Class.Name, GradeId: v1.Grade.Id, ClassId: v1.Class.Id}) | |||||
} | } | ||||
} | } | ||||
resp.List = append(resp.List, temp) | resp.List = append(resp.List, temp) | ||||
@@ -268,6 +313,20 @@ func EnterpriseUserListByCentralKitchenForSchoolV2(req md.EnterpriseUserListReq) | |||||
"value": enum2.UserIdentityForSelfSupportForWorker, | "value": enum2.UserIdentityForSelfSupportForWorker, | ||||
}, | }, | ||||
} | } | ||||
resp.UserIdentityCertTypeList = []map[string]interface{}{ | |||||
{ | |||||
"name": enum2.UserIdentityCertType.String(enum2.UserIdentityCertTypeForIdCard), | |||||
"value": enum2.UserIdentityCertTypeForIdCard, | |||||
}, | |||||
{ | |||||
"name": enum2.UserIdentityCertType.String(enum2.UserIdentityCertTypeForStudentId), | |||||
"value": enum2.UserIdentityCertTypeForStudentId, | |||||
}, | |||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
} | |||||
return | return | ||||
} | } | ||||
@@ -59,6 +59,7 @@ func SelfSupportForSchoolUserUpdate(req md.SelfSupportForSchoolUserUpdateReq) (e | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForSelfSupportForTeacher, | Identity: enum2.UserIdentityForSelfSupportForTeacher, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -80,6 +81,7 @@ func SelfSupportForSchoolUserUpdate(req md.SelfSupportForSchoolUserUpdateReq) (e | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForWorker, | Kind: enum2.UserIdentityKindForWorker, | ||||
Identity: enum2.UserIdentityForSelfSupportForWorker, | Identity: enum2.UserIdentityForSelfSupportForWorker, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -99,6 +101,7 @@ func SelfSupportForSchoolUserUpdate(req md.SelfSupportForSchoolUserUpdateReq) (e | |||||
Uid: req.Uid, | Uid: req.Uid, | ||||
Name: v.Name, | Name: v.Name, | ||||
IdNo: v.IdNo, | IdNo: v.IdNo, | ||||
CertType: v.CertType, | |||||
Kind: enum2.UserIdentityKindForCommon, | Kind: enum2.UserIdentityKindForCommon, | ||||
Identity: enum2.UserIdentityForSelfSupportForStudent, | Identity: enum2.UserIdentityForSelfSupportForStudent, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -156,6 +159,7 @@ func SelfSupportForSchoolUserUpdate(req md.SelfSupportForSchoolUserUpdateReq) (e | |||||
return errors.New("未查询到对应的身份信息记录") | return errors.New("未查询到对应的身份信息记录") | ||||
} | } | ||||
identity.IdNo = v.IdNo | identity.IdNo = v.IdNo | ||||
identity.CertType = v.CertType | |||||
identity.Name = v.Name | identity.Name = v.Name | ||||
if v.ClassId == -1 { | if v.ClassId == -1 { | ||||
//TODO::为老师身份 | //TODO::为老师身份 | ||||
@@ -175,7 +179,7 @@ func SelfSupportForSchoolUserUpdate(req md.SelfSupportForSchoolUserUpdateReq) (e | |||||
return err3 | return err3 | ||||
} | } | ||||
} | } | ||||
_, err3 := userIdentityDb.UserIdentityUpdateBySession(session, v.UserIdentityId, identity, "id_no", "name", "identity") | |||||
_, err3 := userIdentityDb.UserIdentityUpdateBySession(session, v.UserIdentityId, identity, "id_no", "cert_type", "name", "identity") | |||||
if err3 != nil { | if err3 != nil { | ||||
_ = session.Rollback() | _ = session.Rollback() | ||||
return err3 | return err3 | ||||
@@ -297,6 +301,7 @@ func SelfSupportForSchoolStudentList(req md.SelfSupportForSchoolStudentListReq) | |||||
for _, v := range m { | for _, v := range m { | ||||
resp = append(resp, md.SelfSupportForSchoolStudentListResp{ | resp = append(resp, md.SelfSupportForSchoolStudentListResp{ | ||||
IdNo: v.UserIdentity.IdNo, | IdNo: v.UserIdentity.IdNo, | ||||
CertType: v.UserIdentity.CertType, | |||||
ParentPhone: v.User.Phone, | ParentPhone: v.User.Phone, | ||||
Name: v.UserIdentity.Name, | Name: v.UserIdentity.Name, | ||||
Grade: v.Grade.Name, | Grade: v.Grade.Name, | ||||
@@ -345,6 +350,7 @@ func SelfSupportForSchoolTeacherList(req md.SelfSupportForSchoolTeacherListReq) | |||||
resp = append(resp, md.SelfSupportForSchoolTeacherListResp{ | resp = append(resp, md.SelfSupportForSchoolTeacherListResp{ | ||||
UserIdentityId: v.UserIdentity.Id, | UserIdentityId: v.UserIdentity.Id, | ||||
IdNo: v.UserIdentity.IdNo, | IdNo: v.UserIdentity.IdNo, | ||||
CertType: v.UserIdentity.CertType, | |||||
Phone: v.User.Phone, | Phone: v.User.Phone, | ||||
Name: v.UserIdentity.Name, | Name: v.UserIdentity.Name, | ||||
CollectFaceType: v.SelfSupportForUserFaceInfo.CollectFaceType, | CollectFaceType: v.SelfSupportForUserFaceInfo.CollectFaceType, | ||||
@@ -371,8 +377,9 @@ func SelfSupportForSchoolStudentUpdate(req md.SelfSupportForSchoolStudentUpdateR | |||||
return errors.New("未查询到对应记录") | return errors.New("未查询到对应记录") | ||||
} | } | ||||
userIdentity.IdNo = req.IdNo | userIdentity.IdNo = req.IdNo | ||||
userIdentity.CertType = req.CertType | |||||
userIdentity.Name = req.Name | userIdentity.Name = req.Name | ||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name") | |||||
_, err = userIdentityDb.UserIdentityUpdate(req.UserIdentityId, userIdentity, "id_no", "name", "cert_type") | |||||
if err != nil { | if err != nil { | ||||
return | return | ||||
} | } | ||||
@@ -497,6 +504,7 @@ func SelfSupportForSchoolWorkerList(req md.SelfSupportForSchoolWorkerListReq) (r | |||||
resp = append(resp, md.SelfSupportForSchoolWorkerListResp{ | resp = append(resp, md.SelfSupportForSchoolWorkerListResp{ | ||||
UserIdentityId: v.UserIdentity.Id, | UserIdentityId: v.UserIdentity.Id, | ||||
IdNo: v.UserIdentity.IdNo, | IdNo: v.UserIdentity.IdNo, | ||||
CertType: v.UserIdentity.CertType, | |||||
Phone: v.User.Phone, | Phone: v.User.Phone, | ||||
Name: v.UserIdentity.Name, | Name: v.UserIdentity.Name, | ||||
CreateAt: v.UserIdentity.CreateAt, | CreateAt: v.UserIdentity.CreateAt, | ||||
@@ -582,6 +590,9 @@ func SelfSupportForSchoolOrdList(req md.SelfSupportForSchoolOrdListReq) (resp [] | |||||
if req.OutTradeNo != "" { | if req.OutTradeNo != "" { | ||||
sess.And("self_support_for_school_ord.out_order_no like ?", "%"+req.OutTradeNo+"%") | sess.And("self_support_for_school_ord.out_order_no like ?", "%"+req.OutTradeNo+"%") | ||||
} | } | ||||
if req.EnterpriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterpriseKind) | |||||
} | |||||
if req.IsTeacher != 0 { | if req.IsTeacher != 0 { | ||||
if req.IsTeacher == 1 { | if req.IsTeacher == 1 { | ||||
sess.And("user_identity.identity =?", enum2.UserIdentityForCentralKitchenForTeacher) | sess.And("user_identity.identity =?", enum2.UserIdentityForCentralKitchenForTeacher) | ||||
@@ -832,6 +843,9 @@ func SelfSupportForSchoolArrearsOrdList(req md.SelfSupportForSchoolArrearsOrdLis | |||||
if req.OutTradeNo != "" { | if req.OutTradeNo != "" { | ||||
sess.And("self_support_for_school_ord.out_order_no like ?", "%"+req.OutTradeNo+"%") | sess.And("self_support_for_school_ord.out_order_no like ?", "%"+req.OutTradeNo+"%") | ||||
} | } | ||||
if req.EnterpriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterpriseKind) | |||||
} | |||||
if req.Name != "" { | if req.Name != "" { | ||||
sess.And("user_identity.name like ?", "%"+req.Name+"%") | sess.And("user_identity.name like ?", "%"+req.Name+"%") | ||||
@@ -849,7 +863,7 @@ func SelfSupportForSchoolArrearsOrdList(req md.SelfSupportForSchoolArrearsOrdLis | |||||
var m []*db.SelfSupportForSchoolOrdWithUserIdentity | var m []*db.SelfSupportForSchoolOrdWithUserIdentity | ||||
count, err = sess. | count, err = sess. | ||||
Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | ||||
Join("LEFT", "enterprise", "enterprise.id = user_identity.enterprise_id"). | |||||
Join("LEFT", "enterprise", "enterprise.id = self_support_for_school_ord.enterprise_id"). | |||||
Join("LEFT", "user", "user.id = user_identity.uid"). | Join("LEFT", "user", "user.id = user_identity.uid"). | ||||
Join("LEFT", "class_with_user", "class_with_user.user_identity_id = user_identity.id"). | Join("LEFT", "class_with_user", "class_with_user.user_identity_id = user_identity.id"). | ||||
Join("LEFT", "class", "class_with_user.class_id = class.id"). | Join("LEFT", "class", "class_with_user.class_id = class.id"). | ||||
@@ -16,7 +16,9 @@ func CentralKitchenForSchoolInfo(enterpriseId int) (err error, resp md.CentralKi | |||||
} | } | ||||
resp.Name = enterprise.Name | resp.Name = enterprise.Name | ||||
resp.Memo = enterprise.Memo | resp.Memo = enterprise.Memo | ||||
resp.Kind = enum.EnterprisePvd(enterprise.Kind).String() | |||||
resp.Mode = enum.EnterpriseMode(enterprise.Mode).String() | |||||
resp.Pvd = enum.EnterprisePvd(enterprise.Pvd).String() | |||||
resp.Kind = enum.EnterpriseKind(enterprise.Kind).String() | |||||
resp.State = enum.EnterpriseState(enterprise.State).String() | resp.State = enum.EnterpriseState(enterprise.State).String() | ||||
//2、查询`central_kitchen_for_school_with_spec` | //2、查询`central_kitchen_for_school_with_spec` | ||||
@@ -240,6 +240,10 @@ func SelfSupportForSchoolDataStatisticsExport(req md.SelfSupportForSchoolDataSta | |||||
if req.EndDate != "" { | if req.EndDate != "" { | ||||
sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
sess.And("user_identity.identity = ?", enum.UserIdentityForSelfSupportForTeacher) //只查询老师 | sess.And("user_identity.identity = ?", enum.UserIdentityForSelfSupportForTeacher) //只查询老师 | ||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | ||||
@@ -333,6 +337,9 @@ func SelfSupportForSchoolDataStatisticsExport(req md.SelfSupportForSchoolDataSta | |||||
if req.EndDate != "" { | if req.EndDate != "" { | ||||
sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err = sess. | _, err = sess. | ||||
Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | ||||
Join("LEFT", "enterprise", "enterprise.id = user_identity.enterprise_id"). | Join("LEFT", "enterprise", "enterprise.id = user_identity.enterprise_id"). | ||||
@@ -380,6 +387,9 @@ func SelfSupportForSchoolDataStatisticsExport(req md.SelfSupportForSchoolDataSta | |||||
xlsx.CopySheet(1, sheetIndex) | xlsx.CopySheet(1, sheetIndex) | ||||
j := 4 //表头前三行被占用了,只能从第四行开始 | j := 4 //表头前三行被占用了,只能从第四行开始 | ||||
for kk, vv := range v { | for kk, vv := range v { | ||||
if kk == "" { | |||||
kk = k | |||||
} | |||||
xlsx.SetSheetRow(k, "A"+strconv.Itoa(j), &[]interface{}{kk, | xlsx.SetSheetRow(k, "A"+strconv.Itoa(j), &[]interface{}{kk, | ||||
vv["早餐"]["num"], vv["早餐"]["amount"], | vv["早餐"]["num"], vv["早餐"]["amount"], | ||||
vv["午餐"]["num"], vv["午餐"]["amount"], | vv["午餐"]["num"], vv["午餐"]["amount"], | ||||
@@ -395,6 +405,336 @@ func SelfSupportForSchoolDataStatisticsExport(req md.SelfSupportForSchoolDataSta | |||||
//将文件保存至服务器 | //将文件保存至服务器 | ||||
xlsx.SaveAs("./static" + downloadPath) | xlsx.SaveAs("./static" + downloadPath) | ||||
break | break | ||||
case 3: | |||||
//就餐数据统计表 | |||||
xlsx, _ := excelize.OpenFile("./static/template/自营学校(就餐数据统计表).xlsx") | |||||
fileName = "就餐数据统计表_" + utils.Int64ToStr(now.UnixMilli()) + ".xlsx" | |||||
downloadPath = "/export/self_support_for_school/" + fileName | |||||
//查询出所有的设备 | |||||
//var deviceList []*model.Device | |||||
//err := db.Db.Where("enterprise_id != 0").Find(&deviceList) | |||||
//if err != nil { | |||||
// logx.Error(err) | |||||
// println("<<<<SelfSupportForSchoolDataStatisticsExport2>>>>>1111Error:::", err.Error()) | |||||
// return | |||||
//} | |||||
//var deviceListMapping = map[string]model.Device{} | |||||
//for _, v := range deviceList { | |||||
// deviceListMapping[v.DeviceSn] = *v | |||||
//} | |||||
var m []*db.SelfSupportForSchoolOrdWithUserIdentity | |||||
sess := db.Db.Desc("self_support_for_school_ord.id") | |||||
if req.EnterpriseId != 0 { | |||||
sess.And("self_support_for_school_ord.enterprise_id =?", req.EnterpriseId) | |||||
} | |||||
if req.StartDate != "" { | |||||
sess.And("self_support_for_school_ord.face_time >= ?", req.StartDate) | |||||
} | |||||
if req.EndDate != "" { | |||||
sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | |||||
} | |||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err := sess. | |||||
Join("LEFT", "user_identity", "self_support_for_school_ord.user_identity_id = user_identity.id"). | |||||
Join("LEFT", "enterprise", "enterprise.id = user_identity.enterprise_id"). | |||||
Join("LEFT", "user", "user.id = user_identity.uid"). | |||||
Join("LEFT", "class_with_user", "class_with_user.user_identity_id = user_identity.id"). | |||||
Join("LEFT", "class", "class_with_user.class_id = class.id"). | |||||
Join("LEFT", "grade", "class.grade_id = grade.id"). | |||||
FindAndCount(&m) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
//整合数据 | |||||
var data = map[string]map[string]map[string]map[string]float64{} | |||||
date1, err := time.ParseInLocation("2006-01-02 15:04:05", req.StartDate, time.Local) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
date2, err := time.ParseInLocation("2006-01-02 15:04:05", req.EndDate, time.Local) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
diffDays := int(date2.Sub(date1).Hours() / 24) | |||||
var dates []string | |||||
for i := 0; i <= diffDays; i++ { | |||||
date := date1.AddDate(0, 0, i) | |||||
shopName := date.Format("2006-01-02") | |||||
dates = append(dates, shopName) | |||||
for _, vv := range m { | |||||
tmpDate, err1 := time.ParseInLocation("2006-01-02 15:04:05", vv.SelfSupportForSchoolOrd.FaceTime, time.Local) | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err1.Error()) | |||||
return | |||||
} | |||||
fmt.Println(tmpDate.Format("2006-01-02")) | |||||
if shopName == tmpDate.Format("2006-01-02") { | |||||
if data[vv.Enterprise.Name] == nil { | |||||
data[vv.Enterprise.Name] = make(map[string]map[string]map[string]float64) | |||||
} | |||||
if data[vv.Enterprise.Name][shopName] == nil { | |||||
data[vv.Enterprise.Name][shopName] = make(map[string]map[string]float64) | |||||
} | |||||
mealZh := JudgeSelfSupportForMealTime(vv.SelfSupportForSchoolOrd.FaceTime) | |||||
if data[vv.Enterprise.Name][shopName][mealZh] == nil { | |||||
data[vv.Enterprise.Name][shopName][mealZh] = make(map[string]float64) | |||||
} | |||||
if data[vv.Enterprise.Name][shopName]["合计"] == nil { | |||||
data[vv.Enterprise.Name][shopName]["合计"] = make(map[string]float64) | |||||
} | |||||
data[vv.Enterprise.Name][shopName][mealZh]["num"]++ | |||||
data[vv.Enterprise.Name][shopName][mealZh]["amount"] += utils.StrToFloat64(vv.SelfSupportForSchoolOrd.TradeAmount) | |||||
data[vv.Enterprise.Name][shopName]["合计"]["num"]++ | |||||
data[vv.Enterprise.Name][shopName]["合计"]["amount"] += utils.StrToFloat64(vv.SelfSupportForSchoolOrd.TradeAmount) | |||||
} | |||||
} | |||||
} | |||||
xlsx.SetSheetRow("", "A1", &titleList) | |||||
sheetIndex := 2 //第一个表是模板表 | |||||
for k, v := range data { | |||||
if k == "" { | |||||
k = "未知" | |||||
} | |||||
xlsx.NewSheet(k) //1、新建表格 | |||||
xlsx.CopySheet(1, sheetIndex) | |||||
j := 4 //表头前三行被占用了,只能从第四行开始 | |||||
for _, date := range dates { | |||||
for kk, vv := range v { | |||||
if date == kk { | |||||
xlsx.SetSheetRow(k, "A"+strconv.Itoa(j), &[]interface{}{kk, | |||||
vv["早餐"]["num"], vv["早餐"]["amount"], | |||||
vv["午餐"]["num"], vv["午餐"]["amount"], | |||||
vv["晚餐"]["num"], vv["晚餐"]["amount"], | |||||
vv["夜宵"]["num"], vv["夜宵"]["amount"], | |||||
vv["合计"]["num"], vv["合计"]["amount"], | |||||
}) | |||||
j++ | |||||
} | |||||
sheetIndex++ | |||||
} | |||||
} | |||||
} | |||||
xlsx.DeleteSheet("template") //删除模板表 | |||||
//将文件保存至服务器 | |||||
xlsx.SaveAs("./static" + downloadPath) | |||||
break | |||||
case 4: | |||||
//设备就餐数据统计表 | |||||
fileName = "设备就餐数据统计_" + utils.Int64ToStr(now.UnixMilli()) + ".zip" | |||||
downloadPath = "/export/self_support_for_school/" + fileName | |||||
//查询出所有的设备 | |||||
var deviceList []*model.Device | |||||
if req.EnterpriseId != 0 { | |||||
err := db.Db.Where("enterprise_id != 0").Find(&deviceList) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>1111Error:::", err.Error()) | |||||
return | |||||
} | |||||
} else { | |||||
err := db.Db.Where("enterprise_id = ?", req.EnterpriseId).Find(&deviceList) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>1111Error:::", err.Error()) | |||||
return | |||||
} | |||||
} | |||||
date1, err := time.ParseInLocation("2006-01-02 15:04:05", req.StartDate, time.Local) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
date2, err := time.ParseInLocation("2006-01-02 15:04:05", req.EndDate, time.Local) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
diffDays := int(date2.Sub(date1).Hours() / 24) | |||||
var deviceListMapping = map[string]model.Device{} | |||||
//整合数据 | |||||
var data = map[string]map[string]map[string]map[string]float64{} | |||||
var xlsFileName, xlsDownloadPath []string | |||||
for _, v := range deviceList { | |||||
deviceListMapping[v.DeviceSn] = *v | |||||
var m []*db.SelfSupportForSchoolOrdWithUserIdentityV2 | |||||
sess := db.Db.Where("device_sn = ?", v.DeviceSn).Desc("self_support_for_school_ord.id") | |||||
if req.EnterpriseId != 0 { | |||||
sess.And("self_support_for_school_ord.enterprise_id =?", req.EnterpriseId) | |||||
} | |||||
if req.StartDate != "" { | |||||
sess.And("self_support_for_school_ord.face_time >= ?", req.StartDate) | |||||
} | |||||
if req.EndDate != "" { | |||||
sess.And("self_support_for_school_ord.face_time <= ?", req.EndDate) | |||||
} | |||||
_, err = sess.Join("LEFT", "enterprise", "self_support_for_school_ord.enterprise_id = enterprise.id").FindAndCount(&m) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
for _, vv := range m { | |||||
tmpTime, err1 := time.ParseInLocation("2006-01-02 15:04:05", vv.SelfSupportForSchoolOrd.FaceTime, time.Local) | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err1.Error()) | |||||
return | |||||
} | |||||
tmpDate := tmpTime.Format("2006-01-02") | |||||
if data[vv.Enterprise.Name] == nil { | |||||
data[vv.Enterprise.Name] = make(map[string]map[string]map[string]float64) | |||||
} | |||||
if data[vv.Enterprise.Name][v.Name] == nil { | |||||
data[vv.Enterprise.Name][v.Name] = make(map[string]map[string]float64) | |||||
} | |||||
if data[vv.Enterprise.Name][v.Name][tmpDate] == nil { | |||||
data[vv.Enterprise.Name][v.Name][tmpDate] = make(map[string]float64) | |||||
} | |||||
data[vv.Enterprise.Name][v.Name][tmpDate]["num"]++ | |||||
data[vv.Enterprise.Name][v.Name][tmpDate]["amount"] += utils.StrToFloat64(vv.SelfSupportForSchoolOrd.TradeAmount) | |||||
} | |||||
} | |||||
for k1, v := range data { | |||||
tmpFileName := k1 + "设备就餐数据统计表_" + utils.Int64ToStr(now.UnixMilli()) + ".xlsx" | |||||
tmpDownloadPath := "./static/export/self_support_for_school/" + tmpFileName | |||||
xlsx := excelize.NewFile() | |||||
var totalData = map[string]map[string]float64{} | |||||
for k2, vv := range v { | |||||
var sumNum, sumAmount = float64(0), float64(0) | |||||
xlsx.NewSheet(k2) | |||||
titleList = []string{" 设 备 分 餐 数 据 统 计 表 "} | |||||
xlsx.SetSheetRow(k2, "A1", &titleList) | |||||
titleList = []string{"日 期", "消费笔数", "消费金额"} | |||||
xlsx.SetSheetRow(k2, "A2", &titleList) | |||||
style, err := xlsx.NewStyle(`{"fill":{"type":"pattern","color":["FFFF00"],"pattern":1}, "alignment":{"horizontal":"center"}}`) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
panic(err) | |||||
} | |||||
xlsx.MergeCell(k2, "A1", "C1") //合并单元格 | |||||
xlsx.SetCellStyle(k2, "A1", "C1", style) | |||||
xlsx.SetColWidth(k2, "A", "C", 20) | |||||
j := 3 //表头前两行用了,只能从第三行开始 | |||||
for i := 0; i <= diffDays; i++ { | |||||
date := date1.AddDate(0, 0, i).Format("2006-01-02") | |||||
if vv[date] != nil { | |||||
xlsx.SetSheetRow(k2, "A"+strconv.Itoa(j), &[]interface{}{date, vv[date]["num"], vv[date]["amount"]}) | |||||
sumNum += vv[date]["num"] | |||||
sumAmount += vv[date]["amount"] | |||||
} else { | |||||
xlsx.SetSheetRow(k2, "A"+strconv.Itoa(j), &[]interface{}{date, 0, 0}) | |||||
} | |||||
j++ | |||||
} | |||||
xlsx.SetSheetRow(k2, "A"+strconv.Itoa(j), &[]interface{}{ | |||||
"合计", sumNum, sumAmount}) | |||||
if totalData[k2] == nil { | |||||
totalData[k2] = map[string]float64{} | |||||
} | |||||
totalData[k2]["num"] = sumNum | |||||
totalData[k2]["amount"] = sumAmount | |||||
} | |||||
xlsx.NewSheet("Sheet1") | |||||
titleList = []string{" 设 备 分 餐 数 据 统 计 表 "} | |||||
xlsx.SetSheetRow("Sheet1", "A1", &titleList) | |||||
titleList = []string{"名 称", "消费笔数", "消费金额"} | |||||
xlsx.SetSheetRow("Sheet1", "A2", &titleList) | |||||
style, err := xlsx.NewStyle(`{"fill":{"type":"pattern","color":["FFFF00"],"pattern":1}, "alignment":{"horizontal":"center"}}`) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
panic(err) | |||||
} | |||||
xlsx.MergeCell("Sheet1", "A1", "C1") //合并单元格 | |||||
xlsx.SetCellStyle("Sheet1", "A1", "C1", style) | |||||
xlsx.SetColWidth("Sheet1", "A", "C", 20) | |||||
j := 3 //表头前两行用了,只能从第三行开始 | |||||
for key, val := range totalData { | |||||
xlsx.SetSheetRow("Sheet1", "A"+strconv.Itoa(j), &[]interface{}{key, val["num"], val["amount"]}) | |||||
j++ | |||||
} | |||||
//xlsx.DeleteSheet("Sheet1") //TODO::只能放这里删除 | |||||
//将文件保存至服务器 | |||||
err1 := xlsx.SaveAs(tmpDownloadPath) | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err1.Error()) | |||||
panic(err1) | |||||
} | |||||
xlsDownloadPath = append(xlsDownloadPath, tmpDownloadPath) | |||||
xlsFileName = append(xlsFileName, tmpFileName) | |||||
} | |||||
archive, err := os.Create("./static" + downloadPath) //第一步,创建 zip 文件 | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err.Error()) | |||||
panic(err) | |||||
} | |||||
defer archive.Close() | |||||
zipWriter := zip.NewWriter(archive) //第二步,创建一个新的 *Writer 对象 | |||||
for k, v := range xlsDownloadPath { | |||||
w, err1 := zipWriter.Create("设备就餐数据统计/" + xlsFileName[k]) //向 zip 文件中添加一个文件,返回一个待压缩的文件内容应写入的 Writer | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport4>>>>>Error:::", err1.Error()) | |||||
panic(err1) | |||||
} | |||||
f, err1 := os.Open(v) //打开待压缩的文件 | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<CentralKitchenForSchoolDataStatisticsExport7>>>>>Error:::", err1.Error()) | |||||
panic(err1) | |||||
} | |||||
if _, err1 = io.Copy(w, f); err != nil { | |||||
logx.Error(err1) | |||||
println("<<<<CentralKitchenForSchoolDataStatisticsExport7>>>>>Error:::", err1.Error()) | |||||
panic(err1) | |||||
} | |||||
if err1 != nil { | |||||
logx.Error(err1) | |||||
println("<<<<CentralKitchenForSchoolDataStatisticsExport7>>>>>Error:::", err1.Error()) | |||||
panic(err1) | |||||
} | |||||
f.Close() | |||||
os.RemoveAll(v) //TODO::移除源文件 | |||||
} | |||||
zipWriter.Close() // 第四步,关闭 zip writer,将所有数据写入指向基础 zip 文件的数据流 | |||||
if err != nil { | |||||
panic(err) | |||||
} | |||||
break | |||||
} | } | ||||
//新增数据 | //新增数据 | ||||
@@ -437,6 +777,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if req.EndDate != "" { | if req.EndDate != "" { | ||||
sess.And("central_kitchen_for_school_package_ord.create_at <= ?", req.EndDate) | sess.And("central_kitchen_for_school_package_ord.create_at <= ?", req.EndDate) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
var m []*db.CentralKitchenForSchoolPackageOrdWithUserIdentity | var m []*db.CentralKitchenForSchoolPackageOrdWithUserIdentity | ||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -563,6 +906,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_user_with_day.kind", req.MealKindList) | sess.In("central_kitchen_for_school_user_with_day.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
var m []*db.CentralKitchenForSchoolUserRefundDayWithData | var m []*db.CentralKitchenForSchoolUserRefundDayWithData | ||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_user_with_day", "central_kitchen_for_school_user_refund_day.records_id = central_kitchen_for_school_user_with_day.id"). | Join("LEFT", "central_kitchen_for_school_user_with_day", "central_kitchen_for_school_user_refund_day.records_id = central_kitchen_for_school_user_with_day.id"). | ||||
@@ -669,6 +1015,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -875,6 +1224,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -1072,6 +1424,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_user_with_day.kind", req.MealKindList) | sess.In("central_kitchen_for_school_user_with_day.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
var m []*db.CentralKitchenForSchoolUserRefundDayWithData | var m []*db.CentralKitchenForSchoolUserRefundDayWithData | ||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_user_with_day", "central_kitchen_for_school_user_refund_day.records_id = central_kitchen_for_school_user_with_day.id"). | Join("LEFT", "central_kitchen_for_school_user_with_day", "central_kitchen_for_school_user_refund_day.records_id = central_kitchen_for_school_user_with_day.id"). | ||||
@@ -1226,6 +1581,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
//查找数据 | //查找数据 | ||||
var m []model.Enterprise | var m []model.Enterprise | ||||
sess := db.Db.Desc("id") | sess := db.Db.Desc("id") | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("kind = ?", req.EnterPriseKind) | |||||
} | |||||
if req.EnterpriseId != 0 { | if req.EnterpriseId != 0 { | ||||
sess.And("id = ?", req.EnterpriseId) | sess.And("id = ?", req.EnterpriseId) | ||||
} | } | ||||
@@ -1313,6 +1671,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if req.EndDate != "" { | if req.EndDate != "" { | ||||
sess.And("central_kitchen_for_school_package_ord.create_at <= ?", req.EndDate) | sess.And("central_kitchen_for_school_package_ord.create_at <= ?", req.EndDate) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
var m []*db.CentralKitchenForSchoolPackageOrdWithUserIdentity | var m []*db.CentralKitchenForSchoolPackageOrdWithUserIdentity | ||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -1516,6 +1877,9 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -1543,29 +1907,36 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
return | return | ||||
} | } | ||||
count1, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, enum.CentralKitchenForSchoolUserWithDayKindForBreakfast, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
count2, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, enum.CentralKitchenForSchoolUserWithDayKindForLunch, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
count3, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, enum.CentralKitchenForSchoolUserWithDayKindForDinner, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
for _, value := range req.MealKindList { | |||||
if value == enum.CentralKitchenForSchoolUserWithDayKindForBreakfast { | |||||
count1, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, req.StartDate, req.EndDate, enum.CentralKitchenForSchoolUserWithDayKindForBreakfast, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForBreakfast).String()] += count1 | |||||
} | |||||
if value == enum.CentralKitchenForSchoolUserWithDayKindForLunch { | |||||
count2, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, req.StartDate, req.EndDate, enum.CentralKitchenForSchoolUserWithDayKindForLunch, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForLunch).String()] += count2 | |||||
} | |||||
if value == enum.CentralKitchenForSchoolUserWithDayKindForDinner { | |||||
count3, err2 := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(v.CentralKitchenForSchoolPackageOrdForReserve.OutTradeNo, req.StartDate, req.EndDate, enum.CentralKitchenForSchoolUserWithDayKindForDinner, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err2 != nil { | |||||
logx.Error(err) | |||||
println("<<<<SelfSupportForSchoolDataStatisticsExport3>>>>>Error:::", err.Error()) | |||||
return | |||||
} | |||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForDinner).String()] += count3 | |||||
} | |||||
} | } | ||||
list[v.Enterprise.Name]["count"] += count | list[v.Enterprise.Name]["count"] += count | ||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForBreakfast).String()] += count1 | |||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForLunch).String()] += count2 | |||||
list[v.Enterprise.Name][enum.CentralKitchenForSchoolUserWithDayKind(enum.CentralKitchenForSchoolUserWithDayKindForDinner).String()] += count3 | |||||
time.Sleep(20 * time.Millisecond) // 20毫秒 | time.Sleep(20 * time.Millisecond) // 20毫秒 | ||||
} | } | ||||
@@ -1610,6 +1981,94 @@ func CentralKitchenForSchoolDataStatisticsExport(req md.CentralKitchenForSchoolD | |||||
//将文件保存至服务器 | //将文件保存至服务器 | ||||
xlsx.SaveAs("./static" + downloadPath) | xlsx.SaveAs("./static" + downloadPath) | ||||
break | break | ||||
case 10: | |||||
//就餐数据统计表 | |||||
sTime, _ := time.ParseInLocation("2006-01-02 15:04:05", req.StartDate, time.Local) | |||||
eTime, _ := time.ParseInLocation("2006-01-02 15:04:05", req.EndDate, time.Local) | |||||
xls, _ := excelize.OpenFile("./static/template/央厨学校(就餐数据统计表).xlsx") | |||||
fileName = "【" + sTime.Format("2006-01-02") + "~" + eTime.Format("2006-01-02") + "】就餐数据统计表_" + utils.Int64ToStr(now.UnixMilli()) + ".xlsx" | |||||
downloadPath = "/export/central_kitchen_for_school/" + fileName | |||||
var list = map[string]map[string]map[string]float64{} | |||||
var dates []string | |||||
if req.StartDate != "" { | |||||
centralKitchenForSchoolUserWithDayDb := db.CentralKitchenForSchoolUserWithDayDb{} | |||||
centralKitchenForSchoolUserWithDayDb.Set(0) | |||||
diffDays := int(eTime.Sub(sTime).Hours() / 24) | |||||
for i := 0; i <= diffDays; i++ { | |||||
date := sTime.AddDate(0, 0, i) | |||||
dateName := date.Format("2006-01-02") | |||||
dates = append(dates, dateName) | |||||
for _, vv := range req.MealKindList { | |||||
tmpSum, err := centralKitchenForSchoolUserWithDayDb.SumCentralKitchenForSchoolUserWithDayByKind(req.EnterpriseId, dateName, dateName, vv, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<CentralKitchenForSchoolDataStatisticsExport9>>>>>Error:::", err.Error()) | |||||
panic(err) | |||||
} | |||||
tmpCount, err := centralKitchenForSchoolUserWithDayDb.CountCentralKitchenForSchoolUserWithDayByKind(req.EnterpriseId, dateName, dateName, vv, enum.CentralKitchenForSchoolUserWithDayStateForCancel) | |||||
if err != nil { | |||||
logx.Error(err) | |||||
println("<<<<CentralKitchenForSchoolDataStatisticsExport9>>>>>Error:::", err.Error()) | |||||
panic(err) | |||||
} | |||||
if list[dateName] == nil { | |||||
list[dateName] = map[string]map[string]float64{} | |||||
} | |||||
if list[dateName][enum.CentralKitchenForSchoolUserWithDayKind(vv).String()] == nil { | |||||
list[dateName][enum.CentralKitchenForSchoolUserWithDayKind(vv).String()] = map[string]float64{} | |||||
} | |||||
if list[dateName]["合计"] == nil { | |||||
list[dateName]["合计"] = make(map[string]float64) | |||||
} | |||||
list[dateName][enum.CentralKitchenForSchoolUserWithDayKind(vv).String()]["sum"] = tmpSum | |||||
list[dateName][enum.CentralKitchenForSchoolUserWithDayKind(vv).String()]["count"] = float64(tmpCount) | |||||
list[dateName]["合计"]["sum"] += tmpSum | |||||
list[dateName]["合计"]["count"] += float64(tmpCount) | |||||
} | |||||
} | |||||
} | |||||
//xls.SetSheetRow("", "A1", &titleList) | |||||
//sheetIndex := 2 //第一个表是模板表 | |||||
//xls.NewSheet("sheet1") //1、新建表格 | |||||
//xls.CopySheet(1, sheetIndex) | |||||
j := 4 //表头前三"早餐"行被占用了,只能从第四行开始 | |||||
var totalMap = map[string]float64{} | |||||
for _, date := range dates { | |||||
for kk, v := range list { | |||||
if date == kk { | |||||
xls.SetSheetRow("template", "A"+strconv.Itoa(j), &[]interface{}{kk, | |||||
v["早餐"]["count"], v["早餐"]["sum"], | |||||
v["午餐"]["count"], v["午餐"]["sum"], | |||||
v["晚餐"]["count"], v["晚餐"]["sum"], | |||||
v["合计"]["count"], v["合计"]["sum"], | |||||
}) | |||||
totalMap["breakfast_count"] += v["早餐"]["count"] | |||||
totalMap["breakfast_sum"] += v["早餐"]["sum"] | |||||
totalMap["lunch_count"] += v["午餐"]["count"] | |||||
totalMap["lunch_sum"] += v["午餐"]["sum"] | |||||
totalMap["dinner_count"] += v["晚餐"]["count"] | |||||
totalMap["dinner_sum"] += v["晚餐"]["sum"] | |||||
totalMap["total_count"] += v["合计"]["count"] | |||||
totalMap["total_sum"] += v["合计"]["sum"] | |||||
j++ | |||||
} | |||||
} | |||||
} | |||||
//xls.DeleteSheet("template") //删除模板表 | |||||
xls.SetSheetRow("template", "A"+strconv.Itoa(j), &[]interface{}{"总计", | |||||
totalMap["breakfast_count"], totalMap["breakfast_sum"], | |||||
totalMap["lunch_count"], totalMap["lunch_sum"], | |||||
totalMap["dinner_count"], totalMap["dinner_sum"], | |||||
totalMap["total_count"], totalMap["total_sum"], | |||||
}) | |||||
//将文件保存至服务器 | |||||
xls.SaveAs("./static" + downloadPath) | |||||
break | |||||
} | } | ||||
//新增数据 | //新增数据 | ||||
@@ -1653,6 +2112,10 @@ func CentralKitchenForSchoolDataStatisticsContrast(req md.CentralKitchenForSchoo | |||||
if len(req.MealKindList) > 0 { | if len(req.MealKindList) > 0 { | ||||
sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | sess.In("central_kitchen_for_school_package_ord_for_reserve.kind", req.MealKindList) | ||||
} | } | ||||
if req.EnterPriseKind != 0 { | |||||
sess.And("enterprise.kind = ?", req.EnterPriseKind) | |||||
} | |||||
_, err := sess. | _, err := sess. | ||||
Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | Join("LEFT", "central_kitchen_for_school_package_ord", "central_kitchen_for_school_package_ord_for_reserve.out_trade_no = central_kitchen_for_school_package_ord.out_trade_no"). | ||||
Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | Join("LEFT", "user_identity", "central_kitchen_for_school_package_ord.user_identity_id = user_identity.id"). | ||||
@@ -32,6 +32,12 @@ func EnterpriseList(admin model.Admin, req md.EnterpriseListReq) (m []model.Ente | |||||
if req.Kind != 0 { | if req.Kind != 0 { | ||||
sess.And("kind = ?", req.Kind) | sess.And("kind = ?", req.Kind) | ||||
} | } | ||||
if req.Pvd != 0 { | |||||
sess.And("pvd = ?", req.Pvd) | |||||
} | |||||
if req.Mode != 0 { | |||||
sess.And("mode = ?", req.Mode) | |||||
} | |||||
total, err = sess.FindAndCount(&m) | total, err = sess.FindAndCount(&m) | ||||
if err != nil { | if err != nil { | ||||
return | return | ||||
@@ -16,7 +16,7 @@ func NursingHomeInfo(enterpriseId int) (err error, resp md.NursingHomeInfoResp) | |||||
} | } | ||||
resp.Name = enterprise.Name | resp.Name = enterprise.Name | ||||
resp.Memo = enterprise.Memo | resp.Memo = enterprise.Memo | ||||
resp.Kind = enum.EnterprisePvd(enterprise.Kind).String() | |||||
resp.Kind = enum.EnterpriseKind(enterprise.Kind).String() | |||||
resp.State = enum.EnterpriseState(enterprise.State).String() | resp.State = enum.EnterpriseState(enterprise.State).String() | ||||
//2、查询`nursing_home_with_spec` | //2、查询`nursing_home_with_spec` | ||||
@@ -16,7 +16,9 @@ func SelfSupportForSchoolInfo(enterpriseId int) (err error, resp md.SelfSupportF | |||||
} | } | ||||
resp.Name = enterprise.Name | resp.Name = enterprise.Name | ||||
resp.Memo = enterprise.Memo | resp.Memo = enterprise.Memo | ||||
resp.Kind = enum.EnterprisePvd(enterprise.Kind).String() | |||||
resp.Kind = enum.EnterpriseKind(enterprise.Kind).String() | |||||
resp.Mode = enum.EnterpriseMode(enterprise.Mode).String() | |||||
resp.Pvd = enum.EnterprisePvd(enterprise.Pvd).String() | |||||
resp.State = enum.EnterpriseState(enterprise.State).String() | resp.State = enum.EnterpriseState(enterprise.State).String() | ||||
//2、统计 "教师"、 "学生"、 "班级" 数量 | //2、统计 "教师"、 "学生"、 "班级" 数量 | ||||
@@ -50,11 +50,12 @@ func UserList(req md.UserListReq) (resp md.UserListResp, err error) { | |||||
temp.BindUserIdentity = append(temp.BindUserIdentity, struct { | temp.BindUserIdentity = append(temp.BindUserIdentity, struct { | ||||
Id int `json:"id" label:"id"` | Id int `json:"id" label:"id"` | ||||
IdNo string `json:"id_no" label:"身份证号"` | IdNo string `json:"id_no" label:"身份证号"` | ||||
CertType int `json:"cert_type" label:"证件类型"` | |||||
Name string `json:"name" label:"姓名"` | Name string `json:"name" label:"姓名"` | ||||
EnterpriseName string `json:"enterprise_name" label:"企业名"` | EnterpriseName string `json:"enterprise_name" label:"企业名"` | ||||
EnterpriseKind int32 `json:"enterprise_kind" label:"企业类型"` | EnterpriseKind int32 `json:"enterprise_kind" label:"企业类型"` | ||||
Kind int `json:"kind" label:"身份类型"` | Kind int `json:"kind" label:"身份类型"` | ||||
}{Id: v1.UserIdentity.Id, IdNo: v1.UserIdentity.IdNo, Name: v1.UserIdentity.Name, EnterpriseName: v1.Enterprise.Name, EnterpriseKind: v1.Enterprise.Kind, Kind: v1.UserIdentity.Kind}) | |||||
}{Id: v1.UserIdentity.Id, IdNo: v1.UserIdentity.IdNo, CertType: v1.UserIdentity.CertType, Name: v1.UserIdentity.Name, EnterpriseName: v1.Enterprise.Name, EnterpriseKind: v1.Enterprise.Kind, Kind: v1.UserIdentity.Kind}) | |||||
} | } | ||||
resp.List = append(resp.List, temp) | resp.List = append(resp.List, temp) | ||||
} | } | ||||
@@ -86,6 +87,7 @@ func UserUpdate(req md.UserList) (err error) { | |||||
} | } | ||||
identity.Name = v.Name | identity.Name = v.Name | ||||
identity.IdNo = v.IdNo | identity.IdNo = v.IdNo | ||||
identity.CertType = v.CertType | |||||
_, err2 := userIdentityDb.UserIdentityUpdate(identity.Id, identity, "name", "id_no") | _, err2 := userIdentityDb.UserIdentityUpdate(identity.Id, identity, "name", "id_no") | ||||
if err2 != nil { | if err2 != nil { | ||||
err = err2 | err = err2 | ||||
@@ -26,7 +26,9 @@ func EnterpriseList(c *gin.Context) { | |||||
if req.Page == 0 { | if req.Page == 0 { | ||||
req.Page = 10 | req.Page = 10 | ||||
} | } | ||||
enterprises, total, err := svc.EnterpriseList(req) | |||||
platform := c.GetHeader("platform") | |||||
enterprises, total, err := svc.EnterpriseList(req, platform) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -37,20 +39,20 @@ func EnterpriseList(c *gin.Context) { | |||||
"total": total, | "total": total, | ||||
"kind": []map[string]interface{}{ | "kind": []map[string]interface{}{ | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForSchool, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForSchool).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterprisePvdByCentralKitchenForFactory, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindByCentralKitchenForFactory).String(), | |||||
"value": enum.EnterpriseKindByCentralKitchenForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForSchool).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForSchool, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForSchool).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd(enum.EnterprisePvdBySelfSupportForFactory).String(), | |||||
"value": enum.EnterprisePvdBySelfSupportForFactory, | |||||
"name": enum.EnterpriseKind(enum.EnterpriseKindBySelfSupportForFactory).String(), | |||||
"value": enum.EnterpriseKindBySelfSupportForFactory, | |||||
}, | }, | ||||
}, | }, | ||||
}, nil) | }, nil) | ||||
@@ -73,21 +75,19 @@ func EnterpriseInfo(c *gin.Context) { | |||||
var resp interface{} | var resp interface{} | ||||
//判断单位类型 | //判断单位类型 | ||||
switch enterprise.Kind { | |||||
case enum.EnterprisePvdByCentralKitchenForSchool: | |||||
if enterprise.Pvd == enum.EnterprisePvdForOnlinePayment && enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
err, resp = svc.CentralKitchenForSchoolInfo(enterpriseId) | err, resp = svc.CentralKitchenForSchoolInfo(enterpriseId) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
case enum.EnterprisePvdByNursingHome: | |||||
} | |||||
if enterprise.Kind == enum.EnterpriseKindByNursingHome { | |||||
err, resp = svc.NursingHomePackageInfo(enterpriseId) | err, resp = svc.NursingHomePackageInfo(enterpriseId) | ||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR, err.Error()) | e.OutErr(c, e.ERR, err.Error()) | ||||
return | return | ||||
} | } | ||||
break | |||||
} | } | ||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
@@ -98,25 +98,39 @@ func EnterpriseInfo(c *gin.Context) { | |||||
"set_center": res, | "set_center": res, | ||||
"enterprise_kind_list": []map[string]interface{}{ | "enterprise_kind_list": []map[string]interface{}{ | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByCentralKitchenForSchool), | |||||
"value": enum.EnterprisePvdByCentralKitchenForSchool, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByCentralKitchenForSchool), | |||||
"value": enum.EnterpriseKindByCentralKitchenForSchool, | |||||
}, | |||||
{ | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByCentralKitchenForFactory), | |||||
"value": enum.EnterpriseKindByCentralKitchenForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByCentralKitchenForFactory), | |||||
"value": enum.EnterprisePvdByCentralKitchenForFactory, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindBySelfSupportForSchool), | |||||
"value": enum.EnterpriseKindBySelfSupportForSchool, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdBySelfSupportForSchool), | |||||
"value": enum.EnterprisePvdBySelfSupportForSchool, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindBySelfSupportForFactory), | |||||
"value": enum.EnterpriseKindBySelfSupportForFactory, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdBySelfSupportForFactory), | |||||
"value": enum.EnterprisePvdBySelfSupportForFactory, | |||||
"name": enum.EnterpriseKind.String(enum.EnterpriseKindByNursingHome), | |||||
"value": enum.EnterpriseKindByNursingHome, | |||||
}, | |||||
}, | |||||
"user_identity_cert_type_list": []map[string]interface{}{ | |||||
{ | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForIdCard), | |||||
"value": enum.UserIdentityCertTypeForIdCard, | |||||
}, | }, | ||||
{ | { | ||||
"name": enum.EnterprisePvd.String(enum.EnterprisePvdByNursingHome), | |||||
"value": enum.EnterprisePvdByNursingHome, | |||||
"name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForStudentId), | |||||
"value": enum.UserIdentityCertTypeForStudentId, | |||||
}, | }, | ||||
//{ | |||||
// "name": enum.UserIdentityCertType.String(enum.UserIdentityCertTypeForPassport), | |||||
// "value": enum.UserIdentityCertTypeForPassport, | |||||
//}, | |||||
}, | }, | ||||
}, nil) | }, nil) | ||||
return | return | ||||
@@ -265,3 +265,66 @@ func Register(c *gin.Context) { | |||||
}, nil) | }, nil) | ||||
return | return | ||||
} | } | ||||
func UpdateUser(c *gin.Context) { | |||||
var req md.RegisterReq | |||||
err := c.ShouldBindJSON(&req) | |||||
if err != nil { | |||||
err = svc2.HandleValidateErr(err) | |||||
err1 := err.(e.E) | |||||
e.OutErr(c, err1.Code, err1.Error()) | |||||
return | |||||
} | |||||
// 编译正则表达式 | |||||
pattern := `^1[3456789]\d{9}$` | |||||
r := regexp.MustCompile(pattern) | |||||
// 验证手机号码 | |||||
if !r.MatchString(req.Phone) { | |||||
e.OutErr(c, e.ERR, "非法手机号") | |||||
return | |||||
} | |||||
now := time.Now() | |||||
userDb := db.UserDb{} | |||||
userDb.Set() | |||||
user, err := userDb.GetUserByPhone(req.Phone) | |||||
if err != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err) | |||||
return | |||||
} | |||||
if user == nil { | |||||
e.OutErr(c, e.ERR_NO_DATA, "未查詢到相應賬戶記錄!") | |||||
return | |||||
} else { | |||||
user.UpdateAt = now.Format("2006-01-02 15:04:05") | |||||
if req.Nickname != "" { | |||||
user.Nickname = req.Nickname | |||||
} | |||||
if req.Avatar != "" { | |||||
user.Avatar = req.Avatar | |||||
} | |||||
if req.UserId != "" { | |||||
//支付宝 | |||||
user.UserId = req.UserId | |||||
} else { | |||||
//微信 | |||||
user.OpenId = req.OpenId | |||||
user.UnionId = req.UnionId | |||||
} | |||||
updateAffected, err1 := userDb.UpdateUser(user) | |||||
if err1 != nil { | |||||
e.OutErr(c, e.ERR_DB_ORM, err1) | |||||
return | |||||
} | |||||
if updateAffected <= 0 { | |||||
e.OutErr(c, e.ERR_DB_ORM, "更新用户数据失败") | |||||
return | |||||
} | |||||
} | |||||
e.OutSuc(c, "success", nil) | |||||
return | |||||
} |
@@ -8,6 +8,7 @@ import ( | |||||
"applet/app/e" | "applet/app/e" | ||||
"applet/app/enum" | "applet/app/enum" | ||||
"applet/app/utils" | "applet/app/utils" | ||||
"fmt" | |||||
"github.com/gin-gonic/gin" | "github.com/gin-gonic/gin" | ||||
"time" | "time" | ||||
) | ) | ||||
@@ -48,87 +49,94 @@ func UserInfo(c *gin.Context) { | |||||
} | } | ||||
now := time.Now() | now := time.Now() | ||||
if v.UserIdentity.Identity == enum.UserIdentityForSelfSupportForStudent || v.UserIdentity.Identity == enum.UserIdentityForSelfSupportForTeacher { | |||||
//TODO:: 自营-学生 or 自营-教职员工 | |||||
sMDate := utils.GetFirstDateOfMonth(now).Format("2006-01-02 15:04:05") | |||||
eMDate := utils.GetLastDateOfMonth(now).Format("2006-01-02 15:04:05") | |||||
sTDate, eTDate := utils.GetDateTimeRangeStr("today") | |||||
monthStatistic, err2 := svc2.SupportUserIdentityOrderStatistic(v.UserIdentity.Id, sMDate, eMDate) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
} | |||||
dayStatistic, err2 := svc2.SupportUserIdentityOrderStatistic(v.UserIdentity.Id, sTDate, eTDate) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
} | |||||
tmp["month_statistic"] = monthStatistic | |||||
tmp["day_statistic"] = dayStatistic | |||||
//统计是否存在欠费 | |||||
arrearsStatistic, err2 := svc2.SupportUserIdentityOrderStatisticForArrears(v.UserIdentity.Id) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
} | |||||
tmp["arrears_statistic"] = arrearsStatistic | |||||
//查询支付宝扣款账户 | |||||
selfSupportForUserFaceInfoDb := db.SelfSupportForUserFaceInfoDb{} | |||||
selfSupportForUserFaceInfoDb.Set(v.UserIdentity.Id) | |||||
info, err2 := selfSupportForUserFaceInfoDb.GetSelfSupportForUserFaceInfo() | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
if v.Enterprise.Pvd == enum.EnterprisePvdForFaceScanPayment && v.Enterprise.Mode == enum.EnterpriseModeForSchool { | |||||
fmt.Println(">>>>>platform:::", c.GetHeader("platform")) | |||||
if c.GetHeader("platform") == "wx_applet" { | |||||
//TODO::微信小程序直接过滤 | |||||
continue | |||||
} | } | ||||
if info == nil { | |||||
selfSupportForSchoolInfoDb := db.SelfSupportForSchoolInfoDb{} | |||||
selfSupportForSchoolInfoDb.Set(v.UserIdentity.EnterpriseId) | |||||
selfSupportForSchoolInfo, err1 := selfSupportForSchoolInfoDb.GetSelfSupportForSchoolInfo() | |||||
if err1 != nil { | |||||
if v.UserIdentity.Identity == enum.UserIdentityForSelfSupportForWorker { | |||||
//TODO::自营-工作人员 | |||||
selfSupportForUserFaceInfoDb := db.SelfSupportForUserFaceInfoDb{} | |||||
selfSupportForUserFaceInfoDb.Set(0) | |||||
tmp["school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountSchoolFacePassStatus(v.EnterpriseId, "open") | |||||
tmp["school_face_payment_num"], _ = selfSupportForUserFaceInfoDb.CountSchoolFacePaymentStatus(v.EnterpriseId, "open") | |||||
tmp["concentrate_school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountCollectFaceType(v.EnterpriseId, 2) | |||||
tmp["single_school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountCollectFaceType(v.EnterpriseId, 1) | |||||
} else { | |||||
//TODO:: 自营-学生 or 自营-教职员工 | |||||
sMDate := utils.GetFirstDateOfMonth(now).Format("2006-01-02 15:04:05") | |||||
eMDate := utils.GetLastDateOfMonth(now).Format("2006-01-02 15:04:05") | |||||
sTDate, eTDate := utils.GetDateTimeRangeStr("today") | |||||
monthStatistic, err2 := svc2.SupportUserIdentityOrderStatistic(v.UserIdentity.Id, sMDate, eMDate) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | return | ||||
} | } | ||||
if selfSupportForSchoolInfo == nil { | |||||
e.OutErr(c, e.ERR, "当前学校暂未完成《一脸通行入驻》") | |||||
dayStatistic, err2 := svc2.SupportUserIdentityOrderStatistic(v.UserIdentity.Id, sTDate, eTDate) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | return | ||||
} | } | ||||
tmp["month_statistic"] = monthStatistic | |||||
tmp["day_statistic"] = dayStatistic | |||||
info = &model.SelfSupportForUserFaceInfo{ | |||||
EnterpriseId: v.UserIdentity.EnterpriseId, | |||||
UserIdentityId: v.UserIdentity.Id, | |||||
CollectFaceType: 1, //默认个采 | |||||
SchoolCode: selfSupportForSchoolInfo.SchoolCode, | |||||
SchoolStdCode: selfSupportForSchoolInfo.SchoolStdCode, | |||||
ParentUserId: "", | |||||
ParentLogonId: "", | |||||
UserId: "", | |||||
SchoolFacePassStatus: "CLOSE", | |||||
SchoolFacePaymentStatus: "CLOSE", | |||||
ConcentrateSchoolFacePassStatus: 1, | |||||
CreateAt: now.Format("2006-01-02 15:04:05"), | |||||
UpdateAt: now.Format("2006-01-02 15:04:05"), | |||||
//统计是否存在欠费 | |||||
arrearsStatistic, err2 := svc2.SupportUserIdentityOrderStatisticForArrears(v.UserIdentity.Id) | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | |||||
} | } | ||||
_, err3 := selfSupportForUserFaceInfoDb.SelfSupportForUserFaceInfoInsert(info) | |||||
if err3 != nil { | |||||
e.OutErr(c, e.ERR, err3.Error()) | |||||
tmp["arrears_statistic"] = arrearsStatistic | |||||
//查询支付宝扣款账户 | |||||
selfSupportForUserFaceInfoDb := db.SelfSupportForUserFaceInfoDb{} | |||||
selfSupportForUserFaceInfoDb.Set(v.UserIdentity.Id) | |||||
info, err2 := selfSupportForUserFaceInfoDb.GetSelfSupportForUserFaceInfo() | |||||
if err2 != nil { | |||||
e.OutErr(c, e.ERR, err2.Error()) | |||||
return | return | ||||
} | } | ||||
if info == nil { | |||||
selfSupportForSchoolInfoDb := db.SelfSupportForSchoolInfoDb{} | |||||
selfSupportForSchoolInfoDb.Set(v.UserIdentity.EnterpriseId) | |||||
selfSupportForSchoolInfo, err1 := selfSupportForSchoolInfoDb.GetSelfSupportForSchoolInfo() | |||||
if err1 != nil { | |||||
return | |||||
} | |||||
if selfSupportForSchoolInfo == nil { | |||||
e.OutErr(c, e.ERR, "当前学校暂未完成《一脸通行入驻》") | |||||
return | |||||
} | |||||
info = &model.SelfSupportForUserFaceInfo{ | |||||
EnterpriseId: v.UserIdentity.EnterpriseId, | |||||
UserIdentityId: v.UserIdentity.Id, | |||||
CollectFaceType: 1, //默认个采 | |||||
SchoolCode: selfSupportForSchoolInfo.SchoolCode, | |||||
SchoolStdCode: selfSupportForSchoolInfo.SchoolStdCode, | |||||
ParentUserId: "", | |||||
ParentLogonId: "", | |||||
UserId: "", | |||||
SchoolFacePassStatus: "CLOSE", | |||||
SchoolFacePaymentStatus: "CLOSE", | |||||
ConcentrateSchoolFacePassStatus: 1, | |||||
CreateAt: now.Format("2006-01-02 15:04:05"), | |||||
UpdateAt: now.Format("2006-01-02 15:04:05"), | |||||
} | |||||
_, err3 := selfSupportForUserFaceInfoDb.SelfSupportForUserFaceInfoInsert(info) | |||||
if err3 != nil { | |||||
e.OutErr(c, e.ERR, err3.Error()) | |||||
return | |||||
} | |||||
} | |||||
tmp["parent_logon_id"] = info.ParentLogonId | |||||
tmp["collect_face_type"] = info.CollectFaceType | |||||
tmp["concentrate_school_face_pass_status"] = info.ConcentrateSchoolFacePassStatus | |||||
} | } | ||||
tmp["parent_logon_id"] = info.ParentLogonId | |||||
tmp["collect_face_type"] = info.CollectFaceType | |||||
tmp["concentrate_school_face_pass_status"] = info.ConcentrateSchoolFacePassStatus | |||||
} | } | ||||
if v.UserIdentity.Identity == enum.UserIdentityForSelfSupportForWorker { | |||||
selfSupportForUserFaceInfoDb := db.SelfSupportForUserFaceInfoDb{} | |||||
selfSupportForUserFaceInfoDb.Set(0) | |||||
tmp["school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountSchoolFacePassStatus(v.EnterpriseId, "open") | |||||
tmp["school_face_payment_num"], _ = selfSupportForUserFaceInfoDb.CountSchoolFacePaymentStatus(v.EnterpriseId, "open") | |||||
tmp["concentrate_school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountCollectFaceType(v.EnterpriseId, 2) | |||||
tmp["single_school_face_pass_num"], _ = selfSupportForUserFaceInfoDb.CountCollectFaceType(v.EnterpriseId, 1) | |||||
} | |||||
identityList = append(identityList, tmp) | identityList = append(identityList, tmp) | ||||
} | } | ||||
@@ -44,6 +44,7 @@ func SaveCentralKitchenForSchoolUserIdentity(c *gin.Context) { | |||||
Uid: user.Id, | Uid: user.Id, | ||||
Name: req.Name, | Name: req.Name, | ||||
IdNo: req.IdNo, | IdNo: req.IdNo, | ||||
CertType: enum.UserIdentityCertTypeForIdCard, | |||||
Kind: enum.UserIdentityKindForCommon, | Kind: enum.UserIdentityKindForCommon, | ||||
Identity: identity, | Identity: identity, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -136,9 +137,15 @@ func SaveSelfSupportForSchoolUserIdentity(c *gin.Context) { | |||||
now := time.Now() | now := time.Now() | ||||
var identity = enum.UserIdentityForSelfSupportForStudent | var identity = enum.UserIdentityForSelfSupportForStudent | ||||
var kind = enum.UserIdentityKindForCommon | var kind = enum.UserIdentityKindForCommon | ||||
if req.CertType == 0 { | |||||
req.CertType = enum.UserIdentityCertTypeForIdCard | |||||
} | |||||
if req.Kind == enum.UserIdentityKindForWorker { | if req.Kind == enum.UserIdentityKindForWorker { | ||||
kind = enum.UserIdentityKindForWorker | kind = enum.UserIdentityKindForWorker | ||||
identity = enum.UserIdentityForSelfSupportForWorker | identity = enum.UserIdentityForSelfSupportForWorker | ||||
req.CertType = enum.UserIdentityCertTypeForIdCard | |||||
} else { | } else { | ||||
if req.IsTeacher { | if req.IsTeacher { | ||||
identity = enum.UserIdentityForCentralKitchenForTeacher | identity = enum.UserIdentityForCentralKitchenForTeacher | ||||
@@ -148,7 +155,7 @@ func SaveSelfSupportForSchoolUserIdentity(c *gin.Context) { | |||||
//1、判断当前身份是否已绑定 | //1、判断当前身份是否已绑定 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(user.Id) | userIdentityDb.Set(user.Id) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo, req.CertType) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -164,6 +171,7 @@ func SaveSelfSupportForSchoolUserIdentity(c *gin.Context) { | |||||
Uid: user.Id, | Uid: user.Id, | ||||
Name: req.Name, | Name: req.Name, | ||||
IdNo: req.IdNo, | IdNo: req.IdNo, | ||||
CertType: req.CertType, | |||||
Kind: kind, | Kind: kind, | ||||
Identity: identity, | Identity: identity, | ||||
EnterpriseId: req.EnterpriseId, | EnterpriseId: req.EnterpriseId, | ||||
@@ -294,7 +302,7 @@ func SaveNursingHomeUserIdentity(c *gin.Context) { | |||||
//1、判断当前身份是否已绑定 | //1、判断当前身份是否已绑定 | ||||
userIdentityDb := db.UserIdentityDb{} | userIdentityDb := db.UserIdentityDb{} | ||||
userIdentityDb.Set(user.Id) | userIdentityDb.Set(user.Id) | ||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo) | |||||
isHasUserIdentity, err := userIdentityDb.UserIdentityExist(req.EnterpriseId, req.IdNo, enum.UserIdentityCertTypeForIdCard) | |||||
if err != nil { | if err != nil { | ||||
e.OutErr(c, e.ERR_DB_ORM, err.Error()) | e.OutErr(c, e.ERR_DB_ORM, err.Error()) | ||||
return | return | ||||
@@ -36,6 +36,15 @@ func EducateSceneTokenQuery(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
sysCfgDb.Set() | sysCfgDb.Set() | ||||
sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | ||||
var certType string | |||||
switch identity.CertType { | |||||
case enum.UserIdentityCertTypeForIdCard: | |||||
certType = "1" | |||||
case enum.UserIdentityCertTypeForStudentId: | |||||
certType = "X" | |||||
case enum.UserIdentityCertTypeForPassport: | |||||
certType = "A" | |||||
} | |||||
err, info := svc.CurlEducateSceneTokenQuery(md.CurlEducateSceneTokenReq{ | err, info := svc.CurlEducateSceneTokenQuery(md.CurlEducateSceneTokenReq{ | ||||
Config: struct { | Config: struct { | ||||
AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | ||||
@@ -46,6 +55,7 @@ func EducateSceneTokenQuery(c *gin.Context) { | |||||
AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | ||||
AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | ||||
}, | }, | ||||
CertType: certType, | |||||
CertNo: identity.IdNo, | CertNo: identity.IdNo, | ||||
StudentName: identity.Name, | StudentName: identity.Name, | ||||
OutUserId: utils.IntToStr(identity.Id), | OutUserId: utils.IntToStr(identity.Id), | ||||
@@ -84,6 +94,15 @@ func EducateSceneTokenCreateForApplet(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
sysCfgDb.Set() | sysCfgDb.Set() | ||||
sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | ||||
var certType string | |||||
switch identity.CertType { | |||||
case enum.UserIdentityCertTypeForIdCard: | |||||
certType = "1" | |||||
case enum.UserIdentityCertTypeForStudentId: | |||||
certType = "X" | |||||
case enum.UserIdentityCertTypeForPassport: | |||||
certType = "A" | |||||
} | |||||
err, info := svc.CurlEducateSceneTokenCreateForApplet(md.CurlEducateSceneTokenReq{ | err, info := svc.CurlEducateSceneTokenCreateForApplet(md.CurlEducateSceneTokenReq{ | ||||
Config: struct { | Config: struct { | ||||
AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | ||||
@@ -94,6 +113,7 @@ func EducateSceneTokenCreateForApplet(c *gin.Context) { | |||||
AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | ||||
AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | ||||
}, | }, | ||||
CertType: certType, | |||||
CertNo: identity.IdNo, | CertNo: identity.IdNo, | ||||
StudentName: identity.Name, | StudentName: identity.Name, | ||||
OutUserId: utils.IntToStr(identity.Id), | OutUserId: utils.IntToStr(identity.Id), | ||||
@@ -195,6 +215,15 @@ func EducateSceneTokenCreateForConcentratedCollectApplet(c *gin.Context) { | |||||
sysCfgDb := db.SysCfgDb{} | sysCfgDb := db.SysCfgDb{} | ||||
sysCfgDb.Set() | sysCfgDb.Set() | ||||
sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | sysCfg := sysCfgDb.SysCfgFindWithDb(enum.OpenAppletAppid, enum.OpenAppletAppPrivateKey, enum.OpenAppletPublicKey) | ||||
var certType string | |||||
switch identity.CertType { | |||||
case enum.UserIdentityCertTypeForIdCard: | |||||
certType = "1" | |||||
case enum.UserIdentityCertTypeForStudentId: | |||||
certType = "X" | |||||
case enum.UserIdentityCertTypeForPassport: | |||||
certType = "A" | |||||
} | |||||
err, info := svc.CurlEducateSceneTokenCreateForConcentratedCollectApplet(md.CurlEducateSceneTokenReq{ | err, info := svc.CurlEducateSceneTokenCreateForConcentratedCollectApplet(md.CurlEducateSceneTokenReq{ | ||||
Config: struct { | Config: struct { | ||||
AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | AliAppId string `json:"ali_app_id" label:"支付宝开放平台-小程序-appid"` | ||||
@@ -205,6 +234,7 @@ func EducateSceneTokenCreateForConcentratedCollectApplet(c *gin.Context) { | |||||
AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | AliPrivateKey: sysCfg[enum.OpenAppletAppPrivateKey], | ||||
AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | AliPublicKey: sysCfg[enum.OpenAppletPublicKey], | ||||
}, | }, | ||||
CertType: certType, | |||||
CertNo: identity.IdNo, | CertNo: identity.IdNo, | ||||
StudentName: identity.Name, | StudentName: identity.Name, | ||||
OutUserId: utils.IntToStr(identity.Id), | OutUserId: utils.IntToStr(identity.Id), | ||||
@@ -74,6 +74,7 @@ type CurlEducateSceneTokenReq struct { | |||||
AliPrivateKey string `json:"ali_private_key" label:"支付宝开放平台-小程序-应用私钥"` | AliPrivateKey string `json:"ali_private_key" label:"支付宝开放平台-小程序-应用私钥"` | ||||
AliPublicKey string `json:"ali_public_key" label:"支付宝开放平台-小程序-支付宝公钥"` | AliPublicKey string `json:"ali_public_key" label:"支付宝开放平台-小程序-支付宝公钥"` | ||||
} `json:"config" label:"配置信息"` | } `json:"config" label:"配置信息"` | ||||
CertType string `json:"cert_type" label:"证件类型"` | |||||
CertNo string `json:"cert_no" label:"身份证号码"` | CertNo string `json:"cert_no" label:"身份证号码"` | ||||
StudentName string `json:"student_name" label:"姓名"` | StudentName string `json:"student_name" label:"姓名"` | ||||
OutUserId string `json:"out_user_id" label:"服务商内部用户唯一ID,用于与支付宝用户 ID 进行关联"` | OutUserId string `json:"out_user_id" label:"服务商内部用户唯一ID,用于与支付宝用户 ID 进行关联"` | ||||
@@ -87,6 +88,7 @@ type CurlEducateSceneKidsCloseReq struct { | |||||
AliPrivateKey string `json:"ali_private_key" label:"支付宝开放平台-小程序-应用私钥"` | AliPrivateKey string `json:"ali_private_key" label:"支付宝开放平台-小程序-应用私钥"` | ||||
AliPublicKey string `json:"ali_public_key" label:"支付宝开放平台-小程序-支付宝公钥"` | AliPublicKey string `json:"ali_public_key" label:"支付宝开放平台-小程序-支付宝公钥"` | ||||
} `json:"config" label:"配置信息"` | } `json:"config" label:"配置信息"` | ||||
CertType string `json:"cert_type" label:"证件类型"` | |||||
CertNo string `json:"cert_no" label:"身份证号码"` | CertNo string `json:"cert_no" label:"身份证号码"` | ||||
UserId string `json:"user_id" label:"刷脸用户的UID"` | UserId string `json:"user_id" label:"刷脸用户的UID"` | ||||
ParentUid string `json:"parent_uid" label:"开通一脸通行的支付宝UID,如果是家长为学生代开通,则为家长的UID"` | ParentUid string `json:"parent_uid" label:"开通一脸通行的支付宝UID,如果是家长为学生代开通,则为家长的UID"` | ||||
@@ -148,3 +150,21 @@ type CurlAlipayPlanetEcocampusApiDebtCancel struct { | |||||
OutOrderNo string `json:"out_order_no" label:"外部订单号"` | OutOrderNo string `json:"out_order_no" label:"外部订单号"` | ||||
MerchantCode string `json:"merchant_code" label:"商户编号"` | MerchantCode string `json:"merchant_code" label:"商户编号"` | ||||
} | } | ||||
type CurlAlipayPlanetEcocampusApiRosterConsumeLimit struct { | |||||
ConsumeLimitSyncInfo []ConsumeLimitSyncInfo `json:"consume_limit_sync_info" label:"外部订单号"` | |||||
SchoolCode string `json:"school_code" label:"学校内标"` | |||||
SchoolName string `json:"school_name" label:"学校名称"` | |||||
} | |||||
type ConsumeLimitSyncInfo struct { | |||||
FaceUid string `json:"face_uid" label:"学生刷脸编号"` | |||||
OutRosterCode string `json:"out_roster_code" label:"外部花名册编号"` | |||||
RosterName string `json:"roster_name" label:"花名册名称"` | |||||
DailyConsumeLimit string `json:"daily_consume_limit" label:"单日金额上限"` | |||||
DailyConsumeLimitSwitch string `json:"daily_consume_limit_switch" label:"单日金额上限 功能开关"` | |||||
SingleConsumeLimit string `json:"single_consume_limit" label:"单笔金额上限"` | |||||
SingleConsumeLimitSwitch string `json:"single_consume_limit_switch" label:"单笔金额上限 功能开关"` | |||||
DailyConsumeNumber string `json:"daily_consume_number" label:"单日笔数上限"` | |||||
DailyConsumeNumberSwitch string `json:"daily_consume_number_switch" label:"单日笔数上限 功能开关"` | |||||
} |
@@ -23,6 +23,7 @@ type SaveSelfSupportForSchoolUserIdentityReq struct { | |||||
IsTeacher bool `json:"is_teacher" label:"是否教师"` | IsTeacher bool `json:"is_teacher" label:"是否教师"` | ||||
Name string `json:"name" binding:"required" label:"姓名"` | Name string `json:"name" binding:"required" label:"姓名"` | ||||
IdNo string `json:"id_no" binding:"required" label:"身份证号码"` | IdNo string `json:"id_no" binding:"required" label:"身份证号码"` | ||||
CertType int `json:"cert_type" label:"证件类型(1:身份证 2:学工号 3:护照)"` | |||||
GradeId int `json:"grade_id" label:"年级id"` | GradeId int `json:"grade_id" label:"年级id"` | ||||
ClassId int `json:"class_id" label:"班级id"` | ClassId int `json:"class_id" label:"班级id"` | ||||
} | } | ||||
@@ -14,8 +14,10 @@ import ( | |||||
) | ) | ||||
func OrderList(req md.CentralKitchenForSchoolOrderListReq, platform string) (m []model.CentralKitchenForSchoolPackageOrd, total int64, err error) { | func OrderList(req md.CentralKitchenForSchoolOrderListReq, platform string) (m []model.CentralKitchenForSchoolPackageOrd, total int64, err error) { | ||||
sess := db.Db.Desc("id").Where("user_identity_id =?", req.UserIdentityId). | |||||
And("create_at >= ? And create_at <= ?", req.StartDate, req.EndDate).Limit(req.Limit, (req.Page-1)*req.Limit) | |||||
sess := db.Db.Desc("id").Where("user_identity_id =?", req.UserIdentityId).Limit(req.Limit, (req.Page-1)*req.Limit) | |||||
if req.StartDate != "" && req.EndDate != "" { | |||||
sess.And("create_at >= ? And create_at <= ?", req.StartDate, req.EndDate) | |||||
} | |||||
sess.And("ord_state = ?", req.OrdState) | sess.And("ord_state = ?", req.OrdState) | ||||
if req.OrdState == enum.CentralKitchenForSchoolPackageOrdOrdStateForWait { | if req.OrdState == enum.CentralKitchenForSchoolPackageOrdOrdStateForWait { | ||||
if platform == "alipay_applet" { | if platform == "alipay_applet" { | ||||
@@ -35,16 +37,28 @@ func OrderList(req md.CentralKitchenForSchoolOrderListReq, platform string) (m [ | |||||
func OrderStatistic(req md.CentralKitchenForSchoolOrderListReq, platform string) (total float64, err error) { | func OrderStatistic(req md.CentralKitchenForSchoolOrderListReq, platform string) (total float64, err error) { | ||||
var sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | var sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | ||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState) | |||||
"user_identity_id = '%d' and ord_state = '%d'", req.UserIdentityId, req.OrdState) | |||||
if req.StartDate != "" && req.EndDate != "" { | |||||
sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | |||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState) | |||||
} | |||||
if req.OrdState == enum.CentralKitchenForSchoolPackageOrdOrdStateForWait { | if req.OrdState == enum.CentralKitchenForSchoolPackageOrdOrdStateForWait { | ||||
if platform == "alipay_applet" { | if platform == "alipay_applet" { | ||||
sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | ||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState, enum2.PayWayForAli) | |||||
"user_identity_id = '%d' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.OrdState, enum2.PayWayForAli) | |||||
if req.StartDate != "" && req.EndDate != "" { | |||||
sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | |||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState, enum2.PayWayForAli) | |||||
} | |||||
} | } | ||||
if platform == "wx_applet" { | if platform == "wx_applet" { | ||||
sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | ||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState, enum2.PayWayForWx) | |||||
"user_identity_id = '%d' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.OrdState, enum2.PayWayForWx) | |||||
if req.StartDate != "" && req.EndDate != "" { | |||||
sql = fmt.Sprintf("SELECT SUM(total_price) AS sum_total FROM central_kitchen_for_school_package_ord where "+ | |||||
"user_identity_id = '%d' and create_at >= '%s' And create_at <= '%s' and ord_state = '%d' and pay_way = '%d'", req.UserIdentityId, req.StartDate, req.EndDate, req.OrdState, enum2.PayWayForWx) | |||||
} | |||||
} | } | ||||
} | } | ||||
@@ -183,7 +183,7 @@ func CurlEducateSceneTokenQuery(args md.CurlEducateSceneTokenReq, userIdentity * | |||||
"school_std_code": args.SchoolStdCode, | "school_std_code": args.SchoolStdCode, | ||||
"student_name": args.StudentName, | "student_name": args.StudentName, | ||||
"out_user_id": args.OutUserId, | "out_user_id": args.OutUserId, | ||||
"cert_type": "1", | |||||
"cert_type": args.CertType, | |||||
"sub_code": "SCHOOL_FACE_PASS_QUERY", | "sub_code": "SCHOOL_FACE_PASS_QUERY", | ||||
}), nil) | }), nil) | ||||
if err1 != nil { | if err1 != nil { | ||||
@@ -422,7 +422,7 @@ func CurlEducateSceneTokenCreateForApplet(args md.CurlEducateSceneTokenReq) (err | |||||
"school_std_code": args.SchoolStdCode, | "school_std_code": args.SchoolStdCode, | ||||
"student_name": args.StudentName, | "student_name": args.StudentName, | ||||
"out_user_id": args.OutUserId, | "out_user_id": args.OutUserId, | ||||
"cert_type": "1", | |||||
"cert_type": args.CertType, | |||||
"sub_code": "SCHOOL_FACE_PASS_NAVIGATE", | "sub_code": "SCHOOL_FACE_PASS_NAVIGATE", | ||||
}), nil) | }), nil) | ||||
if err != nil { | if err != nil { | ||||
@@ -467,7 +467,7 @@ func CurlEducateSceneTokenCreateForConcentratedCollectApplet(args md.CurlEducate | |||||
"school_std_code": args.SchoolStdCode, | "school_std_code": args.SchoolStdCode, | ||||
"student_name": args.StudentName, | "student_name": args.StudentName, | ||||
"out_user_id": args.OutUserId, | "out_user_id": args.OutUserId, | ||||
"cert_type": "1", | |||||
"cert_type": args.CertType, | |||||
"sub_code": "SCHOOL_PAYMENT_REMOTE_OPEN_ACCOUNT", | "sub_code": "SCHOOL_PAYMENT_REMOTE_OPEN_ACCOUNT", | ||||
"operator_user_id": args.OperatorUserId, //采集人员的支付宝会员标识。(当sub_code为SCHOOL_PAYMENT_REMOTE_OPEN_ACCOUNT时,当前参数必选) | "operator_user_id": args.OperatorUserId, //采集人员的支付宝会员标识。(当sub_code为SCHOOL_PAYMENT_REMOTE_OPEN_ACCOUNT时,当前参数必选) | ||||
}), nil) | }), nil) | ||||
@@ -703,3 +703,33 @@ func CurlAlipayPlanetEcocampusApiDebtCancel(args md.CurlAlipayPlanetEcocampusApi | |||||
} | } | ||||
return nil, result.Data | return nil, result.Data | ||||
} | } | ||||
func CurlAlipayPlanetEcocampusApiRosterConsumeLimit(args md.CurlAlipayPlanetEcocampusApiRosterConsumeLimit) (err error, resp interface{}) { | |||||
url := cfg.SmartCanteenPay + "/alipay/bPass/alipayPlanetEcocampusApiRosterConsumeLimit" | |||||
utils.FilePutContents("CurlAlipayPlanetEcocampusApiRosterConsumeLimit", utils.SerializeStr(map[string]interface{}{ | |||||
"args": args, | |||||
})) | |||||
bytes, err := utils.CurlPost(url, utils.Serialize(args), nil) | |||||
if err != nil { | |||||
return | |||||
} | |||||
var result struct { | |||||
Code int `json:"code"` | |||||
Msg string `json:"msg"` | |||||
Data interface{} `json:"data"` | |||||
} | |||||
utils.FilePutContents("CurlAlipayPlanetEcocampusApiRosterConsumeLimit", utils.SerializeStr(result)) | |||||
err = json.Unmarshal(bytes, &result) | |||||
if err != nil { | |||||
return | |||||
} | |||||
if result.Code != 0 { | |||||
if result.Msg != "" { | |||||
err = errors.New(result.Msg) | |||||
return | |||||
} | |||||
err = errors.New("请求智慧餐厅支付 异常/失败") | |||||
return | |||||
} | |||||
return nil, result.Data | |||||
} |
@@ -4,10 +4,14 @@ import ( | |||||
"applet/app/customer/md" | "applet/app/customer/md" | ||||
"applet/app/db" | "applet/app/db" | ||||
"applet/app/db/model" | "applet/app/db/model" | ||||
"applet/app/enum" | |||||
) | ) | ||||
func EnterpriseList(req md.EnterpriseListReq) (m []model.Enterprise, total int64, err error) { | |||||
func EnterpriseList(req md.EnterpriseListReq, platform string) (m []model.Enterprise, total int64, err error) { | |||||
eg := db.Db.Where("1=1") | eg := db.Db.Where("1=1") | ||||
if platform == "wx_applet" { | |||||
eg.And("pvd != ? ", enum.EnterprisePvdForFaceScanPayment).Or("pvd = ? and mode !=?", enum.EnterprisePvdForFaceScanPayment, enum.EnterpriseModeForSchool) | |||||
} | |||||
if req.Name != "" { | if req.Name != "" { | ||||
eg.And("name like ?", "%"+req.Name+"%") | eg.And("name like ?", "%"+req.Name+"%") | ||||
} | } | ||||
@@ -91,12 +91,50 @@ func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb | |||||
return count, nil | return count, nil | ||||
} | } | ||||
func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(ordNo string, kind, state int) (count int64, err error) { | |||||
func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) CountCentralKitchenForSchoolUserWithDayByOrdNoAndKind(ordNo, startDate, endDate string, kind, state int) (count int64, err error) { | |||||
var m model.CentralKitchenForSchoolUserWithDay | var m model.CentralKitchenForSchoolUserWithDay | ||||
count, err = centralKitchenForSchoolUserWithDayDb.Db.Where("ord_no =?", ordNo).And("kind =?", kind).And("state !=?", state).Count(&m) | |||||
sDate, _ := time.ParseInLocation("2006-01-02 15:04:05", startDate, time.Local) | |||||
eDate, _ := time.ParseInLocation("2006-01-02 15:04:05", endDate, time.Local) | |||||
count, err = centralKitchenForSchoolUserWithDayDb.Db.Where("ord_no =?", ordNo).And("kind =?", kind). | |||||
And("date >= ?", sDate.Format("2006-01-02")).And("date <= ?", eDate.Format("2006-01-02")). | |||||
And("state !=?", state). | |||||
Count(&m) | |||||
return count, nil | return count, nil | ||||
} | } | ||||
func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) SumCentralKitchenForSchoolUserWithDayByKind(enterpriseId int, startDate, endDate string, kind, state int) (sum float64, err error) { | |||||
var m model.CentralKitchenForSchoolUserWithDay | |||||
if enterpriseId != 0 { | |||||
sum, err = centralKitchenForSchoolUserWithDayDb.Db.Where("kind =?", kind). | |||||
And("date >= ?", startDate).And("date <= ?", endDate).And("enterprise_id =?", enterpriseId). | |||||
And("state !=?", state). | |||||
Sum(&m, "amount") | |||||
} else { | |||||
sum, err = centralKitchenForSchoolUserWithDayDb.Db.Where("kind =?", kind). | |||||
And("date >= ?", startDate).And("date <= ?", endDate). | |||||
And("state !=?", state). | |||||
Sum(&m, "amount") | |||||
} | |||||
return sum, nil | |||||
} | |||||
func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) CountCentralKitchenForSchoolUserWithDayByKind(enterpriseId int, startDate, endDate string, kind, state int) (sum int64, err error) { | |||||
var m model.CentralKitchenForSchoolUserWithDay | |||||
if enterpriseId != 0 { | |||||
sum, err = centralKitchenForSchoolUserWithDayDb.Db.Where("kind =?", kind). | |||||
And("date >= ?", startDate).And("date <= ?", endDate).And("enterprise_id =?", enterpriseId). | |||||
And("state !=?", state). | |||||
Count(&m) | |||||
} else { | |||||
sum, err = centralKitchenForSchoolUserWithDayDb.Db.Where("kind =?", kind). | |||||
And("date >= ?", startDate).And("date <= ?", endDate). | |||||
And("state !=?", state). | |||||
Count(&m) | |||||
} | |||||
return sum, nil | |||||
} | |||||
func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) CountCentralKitchenForSchoolUserWithDay(ordNo, startDate, endDate string, kind int) (count int64, err error) { | func (centralKitchenForSchoolUserWithDayDb *CentralKitchenForSchoolUserWithDayDb) CountCentralKitchenForSchoolUserWithDay(ordNo, startDate, endDate string, kind int) (count int64, err error) { | ||||
var m model.CentralKitchenForSchoolUserWithDay | var m model.CentralKitchenForSchoolUserWithDay | ||||
count, err = centralKitchenForSchoolUserWithDayDb.Db.Where("ord_no =?", ordNo). | count, err = centralKitchenForSchoolUserWithDayDb.Db.Where("ord_no =?", ordNo). | ||||
@@ -106,3 +106,12 @@ type SelfSupportForSchoolOrdWithUserIdentity struct { | |||||
func (SelfSupportForSchoolOrdWithUserIdentity) TableName() string { | func (SelfSupportForSchoolOrdWithUserIdentity) TableName() string { | ||||
return "self_support_for_school_ord" | return "self_support_for_school_ord" | ||||
} | } | ||||
type SelfSupportForSchoolOrdWithUserIdentityV2 struct { | |||||
model.SelfSupportForSchoolOrd `xorm:"extends"` | |||||
model.Enterprise `xorm:"extends"` | |||||
} | |||||
func (SelfSupportForSchoolOrdWithUserIdentityV2) TableName() string { | |||||
return "self_support_for_school_ord" | |||||
} |
@@ -0,0 +1,89 @@ | |||||
package db | |||||
import ( | |||||
"applet/app/db/model" | |||||
"applet/app/utils/logx" | |||||
"reflect" | |||||
"xorm.io/xorm" | |||||
) | |||||
type SelfSupportForUserConsumeLimitDb struct { | |||||
Db *xorm.Engine `json:"db"` | |||||
UserIdentityId int `json:"user_identity_id"` | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) Set(userIdentityId int) { // set方法 | |||||
selfSupportForUserConsumeLimitDb.Db = Db | |||||
selfSupportForUserConsumeLimitDb.UserIdentityId = userIdentityId | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) GetSelfSupportForUserConsumeLimit() (m *model.SelfSupportForUserConsumeLimit, err error) { | |||||
m = new(model.SelfSupportForUserConsumeLimit) | |||||
has, err := selfSupportForUserConsumeLimitDb.Db.Where("user_identity_id =?", selfSupportForUserConsumeLimitDb.UserIdentityId).Get(m) | |||||
if err != nil { | |||||
return nil, logx.Error(err) | |||||
} | |||||
if has == false { | |||||
return nil, nil | |||||
} | |||||
return m, nil | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) FindSelfSupportForUserConsumeLimit(limit, start int) (*[]model.SelfSupportForUserConsumeLimit, error) { | |||||
var m []model.SelfSupportForUserConsumeLimit | |||||
if limit == 0 || start == 0 { | |||||
if err := selfSupportForUserConsumeLimitDb.Db.Desc("id").Find(&m); err != nil { | |||||
return nil, logx.Error(err) | |||||
} | |||||
} else { | |||||
if err := selfSupportForUserConsumeLimitDb.Db.Desc("id").Limit(limit, start).Find(m); err != nil { | |||||
return nil, logx.Error(err) | |||||
} | |||||
} | |||||
return &m, nil | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) SelfSupportForUserConsumeLimitInsert(m *model.SelfSupportForUserConsumeLimit) (int, error) { | |||||
_, err := selfSupportForUserConsumeLimitDb.Db.InsertOne(m) | |||||
if err != nil { | |||||
return 0, err | |||||
} | |||||
return m.Id, nil | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) SelfSupportForUserConsumeLimitUpdate(m *model.SelfSupportForUserConsumeLimit, columns ...string) (int64, error) { | |||||
affected, err := selfSupportForUserConsumeLimitDb.Db.Where("id =?", m.Id).Cols(columns...).Update(m) | |||||
if err != nil { | |||||
return 0, err | |||||
} | |||||
return affected, nil | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) SelfSupportForUserConsumeLimitDelete(id interface{}) (int64, error) { | |||||
if reflect.TypeOf(id).Kind() == reflect.Slice { | |||||
return Db.In("id", id).Delete(model.SelfSupportForUserConsumeLimit{}) | |||||
} else { | |||||
return Db.Where("id = ?", id).Delete(model.SelfSupportForUserConsumeLimit{}) | |||||
} | |||||
} | |||||
func (selfSupportForUserConsumeLimitDb *SelfSupportForUserConsumeLimitDb) BatchAdd(mm []*model.SelfSupportForUserConsumeLimit) (int64, error) { | |||||
affected, err := selfSupportForUserConsumeLimitDb.Db.Insert(mm) | |||||
if err != nil { | |||||
return 0, err | |||||
} | |||||
return affected, nil | |||||
} | |||||
type SelfSupportForUserConsumeLimitWithUserIdentity struct { | |||||
model.UserIdentity `xorm:"extends"` | |||||
model.SelfSupportForUserConsumeLimit `xorm:"extends"` | |||||
model.User `xorm:"extends"` | |||||
model.ClassWithUser `xorm:"extends"` | |||||
model.Class `xorm:"extends"` | |||||
model.Grade `xorm:"extends"` | |||||
} | |||||
func (SelfSupportForUserConsumeLimitWithUserIdentity) TableName() string { | |||||
return "user_identity" | |||||
} |
@@ -30,9 +30,9 @@ func (userIdentityDb *UserIdentityDb) GetUserIdentity(id int) (m *model.UserIden | |||||
return m, nil | return m, nil | ||||
} | } | ||||
func (userIdentityDb *UserIdentityDb) UserIdentityExist(enterpriseId int, idNo string) (m *model.UserIdentity, err error) { | |||||
func (userIdentityDb *UserIdentityDb) UserIdentityExist(enterpriseId int, idNo string, certType int) (m *model.UserIdentity, err error) { | |||||
m = new(model.UserIdentity) | m = new(model.UserIdentity) | ||||
has, err := userIdentityDb.Db.Where("enterprise_id =?", enterpriseId).And("id_no =?", idNo).Get(m) | |||||
has, err := userIdentityDb.Db.Where("enterprise_id =?", enterpriseId).And("id_no =?", idNo).And("cert_type =?", certType).Get(m) | |||||
if err != nil { | if err != nil { | ||||
return nil, logx.Error(err) | return nil, logx.Error(err) | ||||
} | } | ||||
@@ -3,7 +3,8 @@ package model | |||||
type Enterprise struct { | type Enterprise struct { | ||||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | ||||
Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | Name string `json:"name" xorm:"not null default '' comment('名称') VARCHAR(255)"` | ||||
Pvd int32 `json:"pvd" xorm:"not null default 1 comment('场景(1:央厨配送 2:自营食堂)') TINYINT(1)"` | |||||
Pvd int32 `json:"pvd" xorm:"not null default 1 comment('消费场景(1:在线支付 2:刷脸支付)') TINYINT(1)"` | |||||
Mode int32 `json:"mode" xorm:"not null default 1 comment('模式(1:学校 2:工厂 3:养老院)') TINYINT(1)"` | |||||
Kind int32 `json:"kind" xorm:"not null default 1 comment('种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)') TINYINT(1)"` | Kind int32 `json:"kind" xorm:"not null default 1 comment('种类(1:央厨-学校 2:央厨-工厂 3:自营-学校 4:自营-工厂 5:养老院)') TINYINT(1)"` | ||||
CompanyId int `json:"company_id" xorm:"not null default 0 comment('所属公司id') INT(11)"` | CompanyId int `json:"company_id" xorm:"not null default 0 comment('所属公司id') INT(11)"` | ||||
State int32 `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | State int32 `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | ||||
@@ -6,6 +6,7 @@ type SelfSupportForSchoolInfo struct { | |||||
SchoolCode string `json:"school_code" xorm:"not null default '' comment('学校内标') VARCHAR(255)"` | SchoolCode string `json:"school_code" xorm:"not null default '' comment('学校内标') VARCHAR(255)"` | ||||
SchoolStdCode string `json:"school_std_code" xorm:"not null default '' comment('学校外标') VARCHAR(255)"` | SchoolStdCode string `json:"school_std_code" xorm:"not null default '' comment('学校外标') VARCHAR(255)"` | ||||
GroupKey string `json:"group_key" xorm:"not null default '' comment('学校人脸库ID') VARCHAR(255)"` | GroupKey string `json:"group_key" xorm:"not null default '' comment('学校人脸库ID') VARCHAR(255)"` | ||||
SchoolName string `json:"school_name" xorm:"not null default '' VARCHAR(255)"` | |||||
Memo string `json:"memo" xorm:"not null default '' VARCHAR(255)"` | Memo string `json:"memo" xorm:"not null default '' VARCHAR(255)"` | ||||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | ||||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | ||||
@@ -0,0 +1,15 @@ | |||||
package model | |||||
type SelfSupportForUserConsumeLimit struct { | |||||
Id int `json:"id" xorm:"not null pk autoincr INT(11)"` | |||||
EnterpriseId int `json:"enterprise_id" xorm:"not null default 0 comment('单位id') INT(11)"` | |||||
UserIdentityId int `json:"user_identity_id" xorm:"not null default 0 comment('用户身份id') INT(11)"` | |||||
DailyConsumeLimit string `json:"daily_consume_limit" xorm:"not null default '' comment('单日金额上限') CHAR(50)"` | |||||
DailyConsumeLimitSwitch string `json:"daily_consume_limit_switch" xorm:"not null default '' comment('单日金额上限 功能开关') CHAR(50)"` | |||||
SingleConsumeLimit string `json:"single_consume_limit" xorm:"not null default '' comment('单笔金额上限') CHAR(50)"` | |||||
SingleConsumeLimitSwitch string `json:"single_consume_limit_switch" xorm:"not null default '' comment('单日金额上限 功能开关') CHAR(50)"` | |||||
DailyConsumeNumber string `json:"daily_consume_number" xorm:"not null default '' comment('单日笔数上限') CHAR(50)"` | |||||
DailyConsumeNumberSwitch string `json:"daily_consume_number_switch" xorm:"not null default '' comment('单日笔数上限 功能开关') CHAR(50)"` | |||||
CreateAt string `json:"create_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||||
UpdateAt string `json:"update_at" xorm:"not null default 'CURRENT_TIMESTAMP' DATETIME"` | |||||
} |
@@ -7,6 +7,7 @@ type UserIdentity struct { | |||||
IdNo string `json:"id_no" xorm:"not null default '' comment('身份证号码') VARCHAR(255)"` | IdNo string `json:"id_no" xorm:"not null default '' comment('身份证号码') VARCHAR(255)"` | ||||
Kind int `json:"kind" xorm:"not null default 1 comment('类型(1:普通用户 2:工作人员)') TINYINT(1)"` | Kind int `json:"kind" xorm:"not null default 1 comment('类型(1:普通用户 2:工作人员)') TINYINT(1)"` | ||||
Identity int `json:"identity" xorm:"not null default 1 comment('身份类型(1:央厨-学生 2:央厨-教职员工 3:央厨-工作人员 4:自营-学生 5:自营-教职员工 6:自营-工作人员 7:养老院-普通用户)') TINYINT(1)"` | Identity int `json:"identity" xorm:"not null default 1 comment('身份类型(1:央厨-学生 2:央厨-教职员工 3:央厨-工作人员 4:自营-学生 5:自营-教职员工 6:自营-工作人员 7:养老院-普通用户)') TINYINT(1)"` | ||||
CertType int `json:"cert_type" xorm:"not null default 1 comment('证件类型(1:身份证 2:学工号 3:护照)') TINYINT(1)"` | |||||
EnterpriseId int `json:"enterprise_id" xorm:"not null default 0 comment('所属单位id') INT(11)"` | EnterpriseId int `json:"enterprise_id" xorm:"not null default 0 comment('所属单位id') INT(11)"` | ||||
State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | State int `json:"state" xorm:"not null default 1 comment('状态(1:正常 2:冻结)') TINYINT(1)"` | ||||
Memo string `json:"memo" xorm:"not null default '' comment('备注信息') VARCHAR(244)"` | Memo string `json:"memo" xorm:"not null default '' comment('备注信息') VARCHAR(244)"` | ||||
@@ -18,27 +18,66 @@ func (gt EnterpriseState) String() string { | |||||
} | } | ||||
} | } | ||||
type EnterprisePvd int32 | |||||
type EnterpriseKind int32 | |||||
const ( | const ( | ||||
EnterprisePvdByCentralKitchenForSchool = 1 | |||||
EnterprisePvdByCentralKitchenForFactory = 2 | |||||
EnterprisePvdBySelfSupportForSchool = 3 | |||||
EnterprisePvdBySelfSupportForFactory = 4 | |||||
EnterprisePvdByNursingHome = 5 | |||||
EnterpriseKindByCentralKitchenForSchool = 1 | |||||
EnterpriseKindByCentralKitchenForFactory = 2 | |||||
EnterpriseKindBySelfSupportForSchool = 3 | |||||
EnterpriseKindBySelfSupportForFactory = 4 | |||||
EnterpriseKindByNursingHome = 5 | |||||
) | ) | ||||
func (gt EnterprisePvd) String() string { | |||||
func (gt EnterpriseKind) String() string { | |||||
switch gt { | switch gt { | ||||
case EnterprisePvdByCentralKitchenForSchool: | |||||
case EnterpriseKindByCentralKitchenForSchool: | |||||
return "央厨-学校" | return "央厨-学校" | ||||
case EnterprisePvdByCentralKitchenForFactory: | |||||
case EnterpriseKindByCentralKitchenForFactory: | |||||
return "央厨-工厂" | return "央厨-工厂" | ||||
case EnterprisePvdBySelfSupportForSchool: | |||||
case EnterpriseKindBySelfSupportForSchool: | |||||
return "自营-学校" | return "自营-学校" | ||||
case EnterprisePvdBySelfSupportForFactory: | |||||
case EnterpriseKindBySelfSupportForFactory: | |||||
return "自营-工厂" | return "自营-工厂" | ||||
case EnterprisePvdByNursingHome: | |||||
case EnterpriseKindByNursingHome: | |||||
return "养老院" | |||||
default: | |||||
return "未知" | |||||
} | |||||
} | |||||
type EnterprisePvd int32 | |||||
const ( | |||||
EnterprisePvdForOnlinePayment = 1 | |||||
EnterprisePvdForFaceScanPayment = 2 | |||||
) | |||||
func (gt EnterprisePvd) String() string { | |||||
switch gt { | |||||
case EnterprisePvdForOnlinePayment: | |||||
return "在线支付" | |||||
case EnterprisePvdForFaceScanPayment: | |||||
return "刷脸支付" | |||||
default: | |||||
return "未知" | |||||
} | |||||
} | |||||
type EnterpriseMode int32 | |||||
const ( | |||||
EnterpriseModeForSchool = 1 | |||||
EnterpriseModeForFactory = 2 | |||||
EnterpriseModeForNursingHome = 3 | |||||
) | |||||
func (gt EnterpriseMode) String() string { | |||||
switch gt { | |||||
case EnterpriseModeForSchool: | |||||
return "学校" | |||||
case EnterpriseModeForFactory: | |||||
return "工厂" | |||||
case EnterpriseModeForNursingHome: | |||||
return "养老院" | return "养老院" | ||||
default: | default: | ||||
return "未知" | return "未知" | ||||
@@ -68,3 +68,37 @@ func (gt UserIdentityState) String() string { | |||||
return "未知" | return "未知" | ||||
} | } | ||||
} | } | ||||
type UserIdentityCertType int32 | |||||
const ( | |||||
UserIdentityCertTypeForIdCard = 1 | |||||
UserIdentityCertTypeForStudentId = 2 | |||||
UserIdentityCertTypeForPassport = 3 | |||||
) | |||||
func (gt UserIdentityCertType) String() string { | |||||
switch gt { | |||||
case UserIdentityCertTypeForIdCard: | |||||
return "身份证" | |||||
case UserIdentityCertTypeForStudentId: | |||||
return "学工号" | |||||
case UserIdentityCertTypeForPassport: | |||||
return "护照" | |||||
default: | |||||
return "未知" | |||||
} | |||||
} | |||||
func (gt UserIdentityCertType) Format() string { | |||||
switch gt { | |||||
case UserIdentityCertTypeForIdCard: | |||||
return "1" | |||||
case UserIdentityCertTypeForStudentId: | |||||
return "X" | |||||
case UserIdentityCertTypeForPassport: | |||||
return "Y" | |||||
default: | |||||
return "" | |||||
} | |||||
} |
@@ -77,8 +77,10 @@ func rOss(r *gin.RouterGroup) { | |||||
} | } | ||||
func rSetCenter(r *gin.RouterGroup) { | func rSetCenter(r *gin.RouterGroup) { | ||||
r.GET("/get", hdl2.GetCenter) // 设置中心-获取 | |||||
r.POST("/set", hdl2.SetCenter) // 设置中心-设置 | |||||
r.GET("/get", hdl2.GetCenter) // 设置中心-在线支付(学校)获取 | |||||
r.POST("/set", hdl2.SetCenter) // 设置中心-在线支付(学校)设置 | |||||
r.GET("/getForNursingHome", hdl2.GetForNursingHome) // 设置中心-在线支付(养老院)获取 | |||||
r.POST("/setForNursingHome", hdl2.SetForNursingHome) // 设置中心-在线支付(养老院)设置 | |||||
} | } | ||||
func rAuditCenter(r *gin.RouterGroup) { | func rAuditCenter(r *gin.RouterGroup) { | ||||
@@ -219,6 +221,8 @@ func rEnterpriseManage(r *gin.RouterGroup) { | |||||
r.GET("/selfSupportForSchool/downloadTemplateExcel", hdl.SelfSupportForSchoolDownloadTemplateExcel) //"自营-学校"下载表格模板 | r.GET("/selfSupportForSchool/downloadTemplateExcel", hdl.SelfSupportForSchoolDownloadTemplateExcel) //"自营-学校"下载表格模板 | ||||
r.POST("/selfSupportForSchool/ordList", hdl.SelfSupportForSchoolOrdList) //"自营-学校"订单列表 | r.POST("/selfSupportForSchool/ordList", hdl.SelfSupportForSchoolOrdList) //"自营-学校"订单列表 | ||||
r.Any("/selfSupportForSchool/ordListExport", hdl.SelfSupportForSchoolOrdListExport) //"自营-学校"订单列表-导出 | r.Any("/selfSupportForSchool/ordListExport", hdl.SelfSupportForSchoolOrdListExport) //"自营-学校"订单列表-导出 | ||||
r.POST("/selfSupportForSchool/consumeLimit", hdl.SelfSupportForSchoolConsumeLimit) //"自营-学校"消费限制-编辑 | |||||
r.POST("/selfSupportForSchool/consumeLimitList", hdl.SelfSupportForSchoolConsumeLimitList) //"自营-学校"消费限制-列表 | |||||
r.POST("/selfSupportForSchool/arrearsOrdList", hdl.SelfSupportForSchoolArrearsOrdList) //"自营-学校"订单欠费列表 | r.POST("/selfSupportForSchool/arrearsOrdList", hdl.SelfSupportForSchoolArrearsOrdList) //"自营-学校"订单欠费列表 | ||||
r.POST("/selfSupportForSchool/blackList", hdl.SelfSupportForSchoolBlackList) //"自营-学校"黑名单列表 | r.POST("/selfSupportForSchool/blackList", hdl.SelfSupportForSchoolBlackList) //"自营-学校"黑名单列表 | ||||
r.POST("/selfSupportForSchool/arrearsOrdDebtRepay", hdl.SelfSupportForSchoolArrearsOrdDebtRepay) //"自营-学校"订单欠费催缴 | r.POST("/selfSupportForSchool/arrearsOrdDebtRepay", hdl.SelfSupportForSchoolArrearsOrdDebtRepay) //"自营-学校"订单欠费催缴 | ||||
@@ -35,9 +35,10 @@ func CustomerInit(r *gin.RouterGroup) { | |||||
r.POST("/register", hdl.Register) | r.POST("/register", hdl.Register) | ||||
r.POST("/aesDecrypt", hdl.AesDecrypt) //TODO::专门给解密支付宝手机号 | r.POST("/aesDecrypt", hdl.AesDecrypt) //TODO::专门给解密支付宝手机号 | ||||
r.POST("/systemOauthToken", hdl.SystemOauthToken) | r.POST("/systemOauthToken", hdl.SystemOauthToken) | ||||
r.GET("/getSysCfg", hdl.GetSysCfg) //获取基础配置 | |||||
r.Use(mw.Auth) //检测登录状态 | |||||
r.GET("/userInfo", hdl.UserInfo) //用户信息 | |||||
r.GET("/getSysCfg", hdl.GetSysCfg) //获取基础配置 | |||||
r.Use(mw.Auth) //检测登录状态 | |||||
r.GET("/userInfo", hdl.UserInfo) //用户信息 | |||||
r.POST("/updateUserInfo", hdl.UpdateUser) //修改用户信息 | |||||
r.Group("/enterprise") | r.Group("/enterprise") | ||||
{ | { | ||||