From 51b1242dc2f55276b65f287974e7f86dcab8c74d Mon Sep 17 00:00:00 2001 From: jyy <935090232@qq.com> Date: Tue, 16 Mar 2021 21:56:27 +0800 Subject: [PATCH] 修改商品查询bug1 --- zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 389 ++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 328 insertions(+), 61 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java index fc38e81..9cf5e16 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java @@ -1,7 +1,7 @@ package com.matrix.system.fenxiao.service; import cn.hutool.core.util.ObjectUtil; -import com.baomidou.mybatisplus.core.conditions.Wrapper; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -9,24 +9,28 @@ import com.matrix.biz.bean.BizUser; import com.matrix.biz.dao.BizUserDao; import com.matrix.biz.service.BizUserService; +import com.matrix.core.constance.MatrixConstance; import com.matrix.core.exception.GlobleException; +import com.matrix.core.pojo.AjaxResult; +import com.matrix.core.pojo.VerificationResult; import com.matrix.core.tools.StringUtils; import com.matrix.system.common.bean.BusParameterSettings; +import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.dao.BusParameterSettingsDao; -import com.matrix.system.common.interceptor.HostInterceptor; import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant; import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao; import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao; -import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto; -import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto; +import com.matrix.system.fenxiao.dto.*; import com.matrix.system.fenxiao.entity.ShopSalesmanApply; import com.matrix.system.fenxiao.entity.ShopSalesmanGrade; -import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo; -import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo; -import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo; +import com.matrix.system.fenxiao.vo.*; +import com.matrix.system.hive.action.util.QueryUtil; +import com.matrix.system.shopXcx.dao.ShopOrderV2Dao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import java.util.Arrays; import java.util.Date; import java.util.List; @@ -43,7 +47,7 @@ BusParameterSettingsDao busParameterSettingsDao; @Autowired - ShopSalesmanApplyDao salesmanApplyDao; + ShopSalesmanApplyDao shopSalesmanApplyDao; @Autowired ShopSalesmanGradeDao shopSalesmanGradeDao; @@ -54,93 +58,356 @@ @Autowired BizUserService bizUserService; + @Autowired + ShopOrderV2Dao shopOrderV2Dao; + /** * 申请成为推广员 * @param openId * @param invitationId * @return */ - public ShopSalesmanApply applyToBeAnSalesman(String openId,String gradeId,String invitationId) { + public ShopSalesmanApply applyToBeAnSalesman(String openId,String gradeId,String invitationId,int applyWay) { BizUser loginUser=bizUserDao.findByOpenId(openId); - //校验审核状态,和是否重复发起 - QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("user_id",loginUser.getOpenId()); - ShopSalesmanApply checkApply = salesmanApplyDao.selectOne(queryWrapper); - if(checkApply==null|| - checkApply.getApplyStatus()==ShopSalesmanApply.APPLY_STATUS_WTG){ + //验证申请条件 + VerificationResult verificationResult = isAbleToBeAnSalesman(openId); + if(verificationResult.isJudgeResult()){ + //校验审核状态,和是否重复发起 + QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("user_id",loginUser.getOpenId()); + queryWrapper.in("apply_status",Arrays.asList("1,2".split(","))); + ShopSalesmanApply checkApply = shopSalesmanApplyDao.selectOne(queryWrapper); + if(checkApply==null|| + checkApply.getApplyStatus()==ShopSalesmanApply.APPLY_STATUS_WTG){ - ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply(); - shopSalesmanApply.setUserId(openId); - - shopSalesmanApply.setCreateBy(loginUser.getNickName()); - shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF); + ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply(); + shopSalesmanApply.setUserId(openId); - shopSalesmanApply.setCompanyId(loginUser.getCompanyId()); - shopSalesmanApply.setUpdateBy(loginUser.getNickName()); - Date date = new Date(); - shopSalesmanApply.setCreateTime(date); - shopSalesmanApply.setUpdateTime(date); + shopSalesmanApply.setCreateBy(MatrixConstance.SYSTEM_USER); + shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF); - if(StringUtils.isNotBlank(invitationId)){ - shopSalesmanApply.setParentUserId(invitationId); - }else if(StringUtils.isNotBlank(loginUser.getParentOpenId())){ - //如果曾经是被邀请进来的则自动绑定为之前邀请人的下级 - shopSalesmanApply.setParentUserId(loginUser.getParentOpenId()); - } - if(StringUtils.isNotBlank(gradeId)){ - shopSalesmanApply.setGradeId(Long.parseLong(gradeId)); + shopSalesmanApply.setCompanyId(loginUser.getCompanyId()); + shopSalesmanApply.setUpdateBy(MatrixConstance.SYSTEM_USER); + Date date = new Date(); + shopSalesmanApply.setCreateTime(date); + shopSalesmanApply.setUpdateTime(date); + + if(StringUtils.isNotBlank(invitationId)){ + shopSalesmanApply.setParentUserId(invitationId); + }else if(StringUtils.isNotBlank(loginUser.getParentOpenId())){ + //如果曾经是被邀请进来的则自动绑定为之前邀请人的下级 + shopSalesmanApply.setParentUserId(loginUser.getParentOpenId()); + } + if(StringUtils.isNotBlank(gradeId)){ + shopSalesmanApply.setGradeId(Long.parseLong(gradeId)); + }else{ + //获取初始等级ID(公司id,是否为初始等级) + QueryWrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>(); + queryWrapperOrepool.eq("company_id", loginUser.getCompanyId()); + queryWrapperOrepool.eq("is_default", 1); + ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool); + shopSalesmanApply.setGradeId(shopSalesmanGrade.getId()); + } + shopSalesmanApply.setApplyWay(applyWay); + + BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, loginUser.getCompanyId()); + if(busParameterSettings!=null + &&busParameterSettings.getParamValue().equals("1")){ + //自动审核 + shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG); + bizUserService.setToBeAnSalesman(loginUser.getOpenId(),invitationId); + + }else{ + shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH); + } + shopSalesmanApplyDao.insert(shopSalesmanApply); + return shopSalesmanApply; }else{ - //获取初始等级ID(公司id,是否为初始等级) - Wrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>(); - ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("company_id", loginUser.getCompanyId()); - ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("is_default", 1); - ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool); - shopSalesmanApply.setGradeId(shopSalesmanGrade.getId()); + throw new GlobleException("不能重复申请"); } - - BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, HostInterceptor.getCompanyId()); - if(busParameterSettings!=null - &&busParameterSettings.getParamValue().equals("1")){ - //自动审核 - shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG); - bizUserService.setToBeAnSalesman(loginUser.getOpenId(),invitationId); - - }else{ - shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH); - } - salesmanApplyDao.insert(shopSalesmanApply); - return shopSalesmanApply; }else{ - throw new GlobleException("不能重复申请"); + throw new GlobleException(verificationResult.getMsg()); } - } + + /** + * 判断是否满足申请成为分销员的条件 + */ + public VerificationResult isAbleToBeAnSalesman(String openId) { + BizUser bizUser = bizUserDao.findByOpenId(openId); + VerificationResult verificationResult=null; + //申请条件 + BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, bizUser.getCompanyId()); + switch (applyCondition.getParamValue()){ + case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ: + VerificationResult.buildVerificationResult(true); + case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP: + VerificationResult.buildVerificationResult(true); + int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1()); + if(buyZdcpCount>0){ + verificationResult= VerificationResult.buildVerificationResult(true); + }else{ + verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!"); + } + + case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP: + //判断用户是否有确认收货的产品 + int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId); + if(receivedOrderCount>0){ + verificationResult= VerificationResult.buildVerificationResult(true); + }else{ + verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!"); + } + case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE: + Double zdje=Double.parseDouble(applyCondition.getParamValue2()); + Double yxfje=shopOrderV2Dao.countOrderAmount(openId); + if(zdje<yxfje){ + verificationResult=VerificationResult.buildVerificationResult(true); + }else{ + verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!"); + } + VerificationResult.buildVerificationResult(true); + default: + VerificationResult.buildVerificationResult(true); + } + return verificationResult; + } + + public IPage<ShopSalesmanApplyVo> findShopSalesmanApplyList(Page<ShopSalesmanApplyVo> page, ShopSalesmanApplyDto shopSalesmanApplyDto) { - return salesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto); + return shopSalesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto); } public IPage<ShopSalesmanAppliingVo> findShopSalesmanAppliingList(Page<ShopSalesmanAppliingVo> page, ShopSalesmanAppliingDto shopSalesmanAppliingDto) { - return salesmanApplyDao.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto); + return shopSalesmanApplyDao.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto); } public IPage<ShopSalesmanAppliingVo> selectBizUserApplyList(Page<ShopSalesmanAppliingVo> page, ShopSalesmanAppliingDto shopSalesmanAppliingDto) { - return salesmanApplyDao.selectBizUserApplyList(page,shopSalesmanAppliingDto); + return shopSalesmanApplyDao.selectBizUserApplyList(page,shopSalesmanAppliingDto); } public List<ShopSalesmanGradeVo> getShopSalesmanGradeVo(Long companyId) { return shopSalesmanGradeDao.getShopSalesmanGradeVo(companyId); } - + + @Transactional(rollbackFor = Exception.class) public void addSaleManApply(String userId,String gradeId) { - BizUser user = bizUserDao.selectById(userId); + BizUser user = bizUserDao.findByOpenId(userId); + applyToBeAnSalesman(user.getOpenId(),gradeId, "",ShopSalesmanApply.APPLY_WAY_HAND_ADD); + } + + @Transactional(rollbackFor = Exception.class) + public void examineSaleManApply(ShopSalesmanApply shopSalesmanApply, Integer applyState) { + String userId = shopSalesmanApply.getUserId(); + String parentUserId = shopSalesmanApply.getParentUserId(); + BizUser bizUser = bizUserDao.findByOpenId(userId); + //修改审核记录 + if(ShopSalesmanApply.APPLY_STATUS_TG == applyState) { + shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG); + bizUser.setIsSales(BizUser.IS_SALES); + }else { + shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_WTG); + bizUser.setIsSales(BizUser.NOT_SALES); + } + shopSalesmanApplyDao.updateById(shopSalesmanApply); + //修改USER的状态 + bizUser.setParentOpenId(parentUserId); + bizUser.setBindingParentTime(new Date()); + bizUserDao.updateByModel(bizUser); + } + + public IPage<ShopSalesmanApplyVo> findShopSalesmanDetail(Page<ShopSalesmanApplyVo> page, + ShopSalesmanDetailDto shopSalesmanDetailDto) { + // TODO Auto-generated method stub + return null; + } + + public SalesmanBasicDetailVo selectShopSalesmanDetailByOpenId(String userId, long applyId) { + //获取个人信息 + BizUser bizUser = bizUserDao.findByOpenId(userId); + Long companyId = bizUser.getCompanyId(); + return shopSalesmanApplyDao.selectShopSalesmanDetailByOpenId(userId,companyId,applyId); + } + + public IPage<ShopCustomDetailVo> findCustomDetail(Page<ShopCustomDetailVo> page, + ShopSalesmanDetailDto shopSalesmanDetailDto) { + return shopSalesmanApplyDao.findCustomDetail(page,shopSalesmanDetailDto); + } + + public IPage<ShopCustomDetailVo> findCustomLow(Page<ShopCustomDetailVo> pageLow, + ShopSalesmanDetailDto shopSalesmanDetailDto) { + return shopSalesmanApplyDao.findCustomLow(pageLow,shopSalesmanDetailDto); + } + + public IPage<ShopOrderDetailVo> findShopOrderDetail(Page<ShopOrderDetailVo> pageOrder, + ShopSalesmanDetailDto shopSalesmanDetailDto) { + return shopSalesmanApplyDao.findShopOrderDetail(pageOrder,shopSalesmanDetailDto); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult changeSaleManGrade(ChangeSaleManGradeDto changeSaleManGradeDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(changeSaleManGradeDto); + String userId = changeSaleManGradeDto.getUserId(); + Long companyId = changeSaleManGradeDto.getCompanyId(); + //获取对应的公司的等级 + QueryWrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>(); + queryWrapperOrepool.eq("is_default", 1); + queryWrapperOrepool.eq("company_id", companyId); + ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool); + //修改Biz_User的salesman_grade + BizUser findByOpenId = bizUserDao.findByOpenId(userId); + if(ObjectUtil.isEmpty(findByOpenId)) { + return AjaxResult.buildFailInstance("当前用户已不存在"); + } + //不是分销员不允许修改 + Integer isSales = findByOpenId.getIsSales(); + if(BizUser.IS_SALES != isSales) { + return AjaxResult.buildFailInstance("当前用户未通过审核,不允许修改"); + } + + //修改申请记录的等级 + QueryWrapper<ShopSalesmanApply> queryShopSalesmanApply = new QueryWrapper<>(); + queryShopSalesmanApply.eq("apply_status", 2); + queryShopSalesmanApply.eq("user_id", userId); + queryShopSalesmanApply.eq("company_id", companyId); + ShopSalesmanApply shopSalesmanApply = shopSalesmanApplyDao.selectOne(queryShopSalesmanApply); + Long gradeId = changeSaleManGradeDto.getGradeId(); + if(ObjectUtil.isEmpty(gradeId)) { + findByOpenId.setSalesmanGrade(shopSalesmanGrade.getId()); + shopSalesmanApply.setGradeId(shopSalesmanGrade.getId()); + }else { + findByOpenId.setSalesmanGrade(gradeId); + shopSalesmanApply.setGradeId(gradeId); + } + bizUserDao.updateByModel(findByOpenId); + shopSalesmanApplyDao.updateById(shopSalesmanApply); + + return AjaxResult.buildFailInstance("修改等级成功"); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult unbundlingSaleMan(UnbundlingSaleManDto unbundlingSaleManDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(unbundlingSaleManDto); + String userId = unbundlingSaleManDto.getUserId(); + //将Biz_User的parent_open_id置空 + BizUser findByOpenId = bizUserDao.findByOpenId(userId); + if(ObjectUtil.isEmpty(findByOpenId)) { + return AjaxResult.buildFailInstance("当前用户已不存在"); + } + findByOpenId.setParentOpenId(""); + bizUserDao.updateByModel(findByOpenId); + return AjaxResult.buildFailInstance("解绑成功"); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult delSaleManGradeApply(DelSaleManGradeApplyDto delSaleManGradeApplyDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(delSaleManGradeApplyDto); + String userId = delSaleManGradeApplyDto.getUserId(); + Long applyid = delSaleManGradeApplyDto.getApplyId(); + + //将biz_user的is_sale设置成否 + BizUser findByOpenId = bizUserDao.findByOpenId(userId); + if(ObjectUtil.isEmpty(findByOpenId)) { + return AjaxResult.buildFailInstance("当前用户已不存在"); + } + findByOpenId.setIsSales(BizUser.NOT_SALES); + bizUserDao.updateByModel(findByOpenId); + //将记录设置成系统取消 + ShopSalesmanApply selectById = shopSalesmanApplyDao.selectById(applyid); + selectById.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_XTQX); + shopSalesmanApplyDao.updateById(selectById); + return AjaxResult.buildFailInstance("操作成功"); + } + + public IPage<FyfaManageVo> findFyfaManageList(Page<FyfaManageVo> page, FyfaManageDto fyfaManageDto) { + return shopSalesmanGradeDao.findFyfaManageList(page,fyfaManageDto); + } + + @Transactional(rollbackFor = Exception.class) + public void addFyfa(SysUsers user) { + ShopSalesmanGrade shopSalesmanGrade = new ShopSalesmanGrade(); + shopSalesmanGrade.setIsDefault(2); + shopSalesmanGrade.setCreateBy(user.getSuName()); + shopSalesmanGrade.setUpdateBy(user.getSuName()); + shopSalesmanGrade.setCreateTime(new Date()); + shopSalesmanGrade.setUpdateTime(new Date()); + shopSalesmanGrade.setCompanyId(user.getCompanyId()); + shopSalesmanGradeDao.insert(shopSalesmanGrade); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult delFyfaApply(DelFyfaApplyDto delFyfaApplyDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(delFyfaApplyDto); + Long gradeId = delFyfaApplyDto.getGradeId(); + ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(gradeId); + if(ObjectUtil.isEmpty(selectById)) { + return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面"); + } + shopSalesmanGradeDao.deleteById(gradeId); + return AjaxResult.buildFailInstance("操作成功"); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult updateFyfa(UpdateFyfaDto updateFyfaDto) { - applyToBeAnSalesman(user.getOpenId(),gradeId, ""); + ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(updateFyfaDto.getId()); + if(ObjectUtil.isEmpty(selectById)) { + return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面"); + } + String name = updateFyfaDto.getName(); + if(StrUtil.isEmpty(name)) { + return AjaxResult.buildFailInstance("请输入方案名称"); + } + Double sealesCommission = updateFyfaDto.getSealesCommission(); + if(ObjectUtil.isEmpty(sealesCommission)) { + return AjaxResult.buildFailInstance("请输入正确的推广提成"); + } + Double invitationCommission = updateFyfaDto.getInvitationCommission(); + if(ObjectUtil.isEmpty(invitationCommission)) { + return AjaxResult.buildFailInstance("请输入正确的邀请提成"); + } + //设置用户公司ID + QueryUtil.setQueryLimitCom(updateFyfaDto); + selectById.setCompanyId(updateFyfaDto.getCompanyId()); + selectById.setName(updateFyfaDto.getName()); + selectById.setSealesCommission(sealesCommission); + selectById.setInvitationCommission(invitationCommission); + selectById.setGradeCondition(updateFyfaDto.getGradeCondition()); + shopSalesmanGradeDao.updateById(selectById); + return AjaxResult.buildFailInstance("操作成功"); } - + @Transactional(rollbackFor = Exception.class) + public AjaxResult updateTgjh(UpdateTgjhDto updateTgjhDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(updateTgjhDto); + //获取推广计划的Param + Long companyId = updateTgjhDto.getCompanyId(); + BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_PLAN, companyId); + busParameterSettings.setParamValue3(updateTgjhDto.getTgfa()); + busParameterSettingsDao.updateByModel(busParameterSettings); + return AjaxResult.buildFailInstance("保存成功"); + } + + @Transactional(rollbackFor = Exception.class) + public AjaxResult updateTgtp(UpdateTgtpDto updateTgtpDto) { + //设置用户公司ID + QueryUtil.setQueryLimitCom(updateTgtpDto); + //获取推广计划的Param + Long companyId = updateTgtpDto.getCompanyId(); + BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_POSTER, companyId); + busParameterSettings.setParamValue(updateTgtpDto.getImageUrl()); + busParameterSettingsDao.updateByModel(busParameterSettings); + return AjaxResult.buildFailInstance("保存成功"); + } + -- Gitblit v1.9.1