diff --git a/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayConfiguration.java b/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayConfiguration.java deleted file mode 100644 index fd770ec..0000000 --- a/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayConfiguration.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.hcy.admin.config.wxpay; - -import com.alibaba.fastjson.JSON; -import com.github.binarywang.wxpay.config.WxPayConfig; -import com.github.binarywang.wxpay.service.WxPayService; -import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl; -import com.hcy.common.entity.pay.DevPay; -import com.hcy.common.entity.system.SystemConfig; -import com.hcy.common.entity.wxpay.SystemWxPayConfig; -import com.hcy.common.enums.OrderPlayTypeEnum; -import com.hcy.common.mapper.pay.DevPayMapper; -import com.hcy.common.mapper.system.SystemConfigMapper; -import lombok.AllArgsConstructor; -import org.apache.commons.lang3.StringUtils; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -import javax.annotation.Resource; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; - -/** - * @author panweiliang - */ -@Configuration -@ConditionalOnClass(WxPayService.class) -@AllArgsConstructor -public class WxPayConfiguration { - - @Resource - private DevPayMapper devPayMapper; - - @Resource - private SystemConfigMapper systemConfigMapper; - - @Bean("mpWxPayService") - public WxPayService mpWxPayService() { - Boolean flag = Boolean.FALSE; - WxPayConfig payConfig = new WxPayConfig(); - DevPay devPay = devPayMapper.getEntityByPayWay(OrderPlayTypeEnum.WECHAT_PAY.getType()); - String config = devPay.getConfig(); - SystemWxPayConfig systemWxPayConfig = JSON.parseObject(config, SystemWxPayConfig.class); - //payConfig.setAppId(StringUtils.trimToNull(systemWxPayConfig.getAppId())); - payConfig.setAppId(StringUtils.trimToNull(this.getAppId("mp_channel"))); - payConfig.setMchId(StringUtils.trimToNull(systemWxPayConfig.getMchId())); - payConfig.setApiV3Key(StringUtils.trimToNull(systemWxPayConfig.getPaySignKey())); - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientKey())) { - payConfig.setPrivateKeyContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientKey()).getBytes()); - flag = Boolean.TRUE; - } - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientCert())) { - payConfig.setPrivateCertContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientCert()).getBytes()); - flag = Boolean.TRUE; - } - // 可以指定是否使用沙箱环境 - payConfig.setUseSandboxEnv(false); - WxPayService wxPayService = new WxPayServiceImpl(); - if (flag) { - wxPayService.setConfig(payConfig); - } - return wxPayService; - } - - @Bean("oaWxPayService") - public WxPayService oaWxPayService() { - Boolean flag = Boolean.FALSE; - WxPayConfig payConfig = new WxPayConfig(); - DevPay devPay = devPayMapper.getEntityByPayWay(OrderPlayTypeEnum.WECHAT_PAY.getType()); - String config = devPay.getConfig(); - SystemWxPayConfig systemWxPayConfig = JSON.parseObject(config, SystemWxPayConfig.class); - //payConfig.setAppId(StringUtils.trimToNull(systemWxPayConfig.getAppId())); - payConfig.setAppId(StringUtils.trimToNull(this.getAppId("oa_channel"))); - payConfig.setMchId(StringUtils.trimToNull(systemWxPayConfig.getMchId())); - payConfig.setApiV3Key(StringUtils.trimToNull(systemWxPayConfig.getPaySignKey())); - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientKey())) { - payConfig.setPrivateKeyContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientKey()).getBytes()); - flag = Boolean.TRUE; - } - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientCert())) { - payConfig.setPrivateCertContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientCert()).getBytes()); - flag = Boolean.TRUE; - } - // 可以指定是否使用沙箱环境 - payConfig.setUseSandboxEnv(false); - WxPayService wxPayService = new WxPayServiceImpl(); - if (flag) { - wxPayService.setConfig(payConfig); - } - return wxPayService; - } - - @Bean("h5WxPayService") - public WxPayService h5WxPayService() { - Boolean flag = Boolean.FALSE; - WxPayConfig payConfig = new WxPayConfig(); - DevPay devPay = devPayMapper.getEntityByPayWay(OrderPlayTypeEnum.WECHAT_PAY.getType()); - String config = devPay.getConfig(); - SystemWxPayConfig systemWxPayConfig = JSON.parseObject(config, SystemWxPayConfig.class); - //payConfig.setAppId(StringUtils.trimToNull(systemWxPayConfig.getAppId())); - payConfig.setAppId(StringUtils.trimToNull(this.getAppId("h5_channel"))); - payConfig.setMchId(StringUtils.trimToNull(systemWxPayConfig.getMchId())); - payConfig.setApiV3Key(StringUtils.trimToNull(systemWxPayConfig.getPaySignKey())); - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientKey())) { - payConfig.setPrivateKeyContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientKey()).getBytes()); - flag = Boolean.TRUE; - } - if (StringUtils.isNotEmpty(systemWxPayConfig.getApiclientCert())) { - payConfig.setPrivateCertContent(StringUtils.trimToNull(systemWxPayConfig.getApiclientCert()).getBytes()); - flag = Boolean.TRUE; - } - // 可以指定是否使用沙箱环境 - payConfig.setUseSandboxEnv(false); - WxPayService wxPayService = new WxPayServiceImpl(); - if (flag) { - wxPayService.setConfig(payConfig); - } - return wxPayService; - } - - private String getAppId(String channel) { - List configs = systemConfigMapper.getAppId(channel); - Map map = new LinkedHashMap<>(); - for (SystemConfig config : configs) { - map.put(config.getName(), config.getValue()); - } - return map.getOrDefault("appId", ""); - } - - -} diff --git a/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayProperties.java b/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayProperties.java deleted file mode 100644 index 639a06e..0000000 --- a/admin/src/main/java/com/hcy/admin/config/wxpay/WxPayProperties.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hcy.admin.config.wxpay; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -/** - * wxpay pay properties. - * - * @author panweiliang - */ -@Data -@Component -@ConfigurationProperties(prefix = "wx.pay") -public class WxPayProperties { - /** - * 订单支付后回调 - */ - private String orderNotifyUrl; - - /** - * - */ - private String orderRefundNotifyUrl; - - /** - * 商品描述 - */ - private String description; - -} diff --git a/admin/src/main/java/com/hcy/admin/controller/pay/DevPayController.java b/admin/src/main/java/com/hcy/admin/controller/pay/DevPayController.java deleted file mode 100644 index 9dc3881..0000000 --- a/admin/src/main/java/com/hcy/admin/controller/pay/DevPayController.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.hcy.admin.controller.pay; - -import com.hcy.admin.config.aop.Log; -import com.hcy.admin.service.pay.IDevPayService; -import com.hcy.admin.validate.pay.DevPayParam; -import com.hcy.admin.vo.pay.DevPayDetailVo; -import com.hcy.admin.vo.pay.DevPayListVo; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 支付配置管理 - */ -@Api(tags = "支付配置管理") -@RestController -@RequestMapping("api/pay") -public class DevPayController { - - @Resource - IDevPayService iDevPayService; - - /** - * 支付配置列表 - * - * @return Object - */ - @ApiOperation(value = "支付配置管理 - 列表") - @GetMapping("/list") - public List list() { - return iDevPayService.listPage(); - } - - /** - * 支付配置详情 - * - * @param id 主键ID - * @return Object - */ - @ApiOperation(value = "支付配置管理 - 详情") - @GetMapping("/detail") - public DevPayDetailVo detail(@Validated @RequestParam("id") Long id) { - return iDevPayService.detail(id); - } - - - /** - * 支付配置编辑 - * - * @param devPayParam 参数 - * @return Object - */ - @ApiOperation(value = "支付配置管理 - 编辑") - @Log(title = "支付配置编辑") - @PostMapping("/edit") - public void edit(@Validated(value = DevPayParam.update.class) @RequestBody DevPayParam devPayParam) throws Exception { - iDevPayService.edit(devPayParam); - } - - -} diff --git a/admin/src/main/java/com/hcy/admin/controller/pay/DevPayWayController.java b/admin/src/main/java/com/hcy/admin/controller/pay/DevPayWayController.java deleted file mode 100644 index f4e6388..0000000 --- a/admin/src/main/java/com/hcy/admin/controller/pay/DevPayWayController.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.hcy.admin.controller.pay; - -import com.hcy.admin.config.aop.Log; -import com.hcy.admin.service.way.IDevPayWayService; -import com.hcy.admin.validate.way.DevPayWayParam; -import com.hcy.admin.vo.way.DevPayWayListVo; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - -/** - * 支付方式管理 - */ -@Api(tags = "支付方式管理") -@RestController -@RequestMapping("api/way") -public class DevPayWayController { - - @Resource - IDevPayWayService iDevPayWayService; - - /** - * 支付方式列表 - * - * @return Object - */ - @ApiOperation(value = "支付方式管理 - 列表") - @GetMapping("/list") - public Map> list() { - return iDevPayWayService.listPage(); - } - - /** - * 支付方式编辑 - * - * @param devPayWayParam 参数 - * @return Object - */ - @ApiOperation(value = "支付方式管理 - 编辑") - @Log(title = "支付方式编辑") - @PostMapping("/edit") - public void edit(@Validated(value = DevPayWayParam.update.class) @RequestBody List devPayWayParam) { - iDevPayWayService.edit(devPayWayParam); - } - -} diff --git a/admin/src/main/java/com/hcy/admin/controller/sparePart/SparePartController.java b/admin/src/main/java/com/hcy/admin/controller/sparePart/SparePartController.java new file mode 100644 index 0000000..4e904a0 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/controller/sparePart/SparePartController.java @@ -0,0 +1,98 @@ +package com.hcy.admin.controller.sparePart; + +import com.hcy.admin.config.aop.Log; +import com.hcy.admin.service.sparePart.ISparePartService; +import com.hcy.admin.validate.sparePart.SparePartParam; +import com.hcy.admin.validate.common.PageParam; + +import com.hcy.admin.vo.sparePart.SparePartDetailVo; +import com.hcy.admin.vo.sparePart.SparePartListVo; +import com.hcy.common.core.AjaxResult; +import com.hcy.common.core.PageResult; +import com.hcy.common.validator.annotation.IDMust; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.Map; + +/** + * 备件信息管理 + */ +@RestController +@RequestMapping("api/sparePart") +public class SparePartController { + + @Resource + ISparePartService iSparePartService; + + /** + * 备件信息列表 + * + * @author hcy + * @param pageParam 分页参数 + * @param params 搜索参数 + * @return Object + */ + @GetMapping("/list") + public Object list(@Validated PageParam pageParam, + @RequestParam Map params) { + PageResult list = iSparePartService.list(pageParam, params); + return AjaxResult.success(list); + } + /** + * 备件信息详情 + * + * @author hcy + * @param id 主键ID + * @return Object + */ + @GetMapping("/detail") + public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) { + SparePartDetailVo detail = iSparePartService.detail(id); + return AjaxResult.success(detail); + } + + /** + * 备件信息新增 + * + * @author hcy + * @param sparePartParam 参数 + * @return Object + */ + @Log(title = "备件信息新增") + @PostMapping("/add") + public Object add(@Validated(value = SparePartParam.create.class) @RequestBody SparePartParam sparePartParam) { + iSparePartService.add(sparePartParam); + return AjaxResult.success(); + } + + /** + * 备件信息编辑 + * + * @author hcy + * @param sparePartParam 参数 + * @return Object + */ + @Log(title = "备件信息编辑") + @PostMapping("/edit") + public Object edit(@Validated(value = SparePartParam.update.class) @RequestBody SparePartParam sparePartParam) { + iSparePartService.edit(sparePartParam); + return AjaxResult.success(); + } + + /** + * 备件信息删除 + * + * @author hcy + * @param sparePartParam 参数 + * @return Object + */ + @Log(title = "备件信息删除") + @PostMapping("/del") + public Object del(@Validated(value = SparePartParam.delete.class) @RequestBody SparePartParam sparePartParam) { + iSparePartService.del(sparePartParam.getIds()); + return AjaxResult.success(); + } + +} diff --git a/admin/src/main/java/com/hcy/admin/service/pay/IDevPayService.java b/admin/src/main/java/com/hcy/admin/service/pay/IDevPayService.java deleted file mode 100644 index cd1217d..0000000 --- a/admin/src/main/java/com/hcy/admin/service/pay/IDevPayService.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.hcy.admin.service.pay; - -import com.hcy.admin.validate.pay.DevPayParam; -import com.hcy.admin.vo.pay.DevPayDetailVo; -import com.hcy.admin.vo.pay.DevPayListVo; - -import java.util.List; - -/** - * 支付配置服务接口类 - */ -public interface IDevPayService { - - /** - * 支付配置列表 - * - * @return PageResult - */ - List listPage(); - - /** - * 支付配置详情 - * - * @param id 主键ID - * @return DevPay - */ - DevPayDetailVo detail(Long id); - - /** - * 支付配置编辑 - * - * @param devPayParam 参数 - */ - void edit(DevPayParam devPayParam) throws Exception; -} diff --git a/admin/src/main/java/com/hcy/admin/service/pay/impl/DevPayServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/pay/impl/DevPayServiceImpl.java deleted file mode 100644 index 2984a76..0000000 --- a/admin/src/main/java/com/hcy/admin/service/pay/impl/DevPayServiceImpl.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.hcy.admin.service.pay.impl; - -import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.google.common.collect.Lists; -import com.hcy.admin.service.pay.IDevPayService; -import com.hcy.admin.validate.pay.DevPayParam; -import com.hcy.admin.vo.pay.DevPayConfigVo; -import com.hcy.admin.vo.pay.DevPayDetailVo; -import com.hcy.admin.vo.pay.DevPayListVo; -import com.hcy.common.entity.pay.DevPay; -import com.hcy.common.enums.OrderPlayTypeEnum; -import com.hcy.common.mapper.pay.DevPayMapper; -import com.hcy.common.utils.UrlUtil; -import com.hcy.common.utils.YmlUtil; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; -import org.springframework.util.Assert; -import org.springframework.util.CollectionUtils; - -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - -/** - * 支付配置实现类 - */ -@Service -public class DevPayServiceImpl extends ServiceImpl implements IDevPayService { - - @Resource - DevPayMapper devPayMapper; - - /** - * 支付配置列表 - * - * @return PageResult - */ - @Override - public List listPage() { - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.orderByAsc(DevPay::getId); - List list = super.list(lambdaQueryWrapper); - if (CollectionUtils.isEmpty(list)) { - return Lists.newArrayList(); - } - List targetList = Lists.newArrayList(); - Map map = OrderPlayTypeEnum.getMap(); - for (DevPay devPay : list) { - DevPayListVo vo = new DevPayListVo(); - BeanUtils.copyProperties(devPay, vo); - vo.setPayWayDesc(map.get(devPay.getPayWay())); - vo.setImage(UrlUtil.toAbsoluteUrl(devPay.getImage())); - targetList.add(vo); - } - return targetList; - } - - /** - * 支付配置详情 - * - * @param id 主键参数 - * @return DevPay - */ - @Override - public DevPayDetailVo detail(Long id) { - DevPay model = devPayMapper.selectOne( - new QueryWrapper() - .eq("id", id) - .last("limit 1")); - - Assert.notNull(model, "数据不存在"); - - String env = YmlUtil.get("like.production"); - boolean envStatus = StringUtils.isNotEmpty(env) && env.equals("true"); - String config = model.getConfig(); - DevPayConfigVo devPayConfigVo = JSON.parseObject(config, DevPayConfigVo.class); - Assert.notNull(devPayConfigVo, "该支付方式配置数据为空"); - DevPayDetailVo vo = new DevPayDetailVo(); - BeanUtils.copyProperties(model, vo); - devPayConfigVo.setApiclientKey(envStatus ? "******" : devPayConfigVo.getApiclientKey()); - devPayConfigVo.setApiclientCert(envStatus ? "******" : devPayConfigVo.getApiclientCert()); - devPayConfigVo.setPaySignKey(envStatus ? "******" : devPayConfigVo.getPaySignKey()); - devPayConfigVo.setMchId(envStatus ? "******" : devPayConfigVo.getMchId()); - vo.setConfig(devPayConfigVo); - vo.setImage(UrlUtil.toAbsoluteUrl(model.getImage())); - vo.setPayWayDesc(OrderPlayTypeEnum.getMap().get(model.getPayWay())); - return vo; - } - - /** - * 支付配置编辑 - * - * @param devPayParam 参数 - */ - @Override - public void edit(DevPayParam devPayParam) throws Exception { - DevPay model = devPayMapper.selectOne( - new QueryWrapper() - .eq("id", devPayParam.getId()) - .last("limit 1")); - - Assert.notNull(model, "数据不存在!"); - - model.setId(devPayParam.getId()); - model.setName(devPayParam.getName()); - model.setPayWay(devPayParam.getPayWay()); - String config = JSON.toJSONString(devPayParam.getConfig()); - model.setConfig(config); - model.setImage(UrlUtil.toRelativeUrl(devPayParam.getImage())); - model.setSort(devPayParam.getSort()); - devPayMapper.updateById(model); - //wxPayConfigBuilder.buildWxPayClient(); - } -} diff --git a/admin/src/main/java/com/hcy/admin/service/sparePart/ISparePartService.java b/admin/src/main/java/com/hcy/admin/service/sparePart/ISparePartService.java new file mode 100644 index 0000000..62e43f0 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/service/sparePart/ISparePartService.java @@ -0,0 +1,60 @@ +package com.hcy.admin.service.sparePart; + +import com.hcy.admin.validate.common.PageParam; +import com.hcy.admin.validate.sparePart.SparePartParam; +import com.hcy.admin.vo.sparePart.SparePartListVo; +import com.hcy.admin.vo.sparePart.SparePartDetailVo; +import com.hcy.common.core.PageResult; + +import java.util.List; +import java.util.Map; + +/** + * 备件信息服务接口类 + */ +public interface ISparePartService { + + /** + * 备件信息列表 + * + * @author hcy + * @param pageParam 分页参数 + * @param params 搜索参数 + * @return PageResult + */ + PageResult list(PageParam pageParam, Map params); + + /** + * 备件信息详情 + * + * @author hcy + * @param id 主键ID + * @return SparePart + */ + SparePartDetailVo detail(Integer id); + + /** + * 备件信息新增 + * + * @author hcy + * @param sparePartParam 参数 + */ + void add(SparePartParam sparePartParam); + + /** + * 备件信息编辑 + * + * @author hcy + * @param sparePartParam 参数 + */ + void edit(SparePartParam sparePartParam); + + /** + * 备件信息删除 + * + * @author hcy + * @param ids 主键ID + */ + void del(List ids); + +} diff --git a/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java new file mode 100644 index 0000000..5c75484 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java @@ -0,0 +1,165 @@ +package com.hcy.admin.service.sparePart.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.hcy.admin.service.sparePart.ISparePartService; +import com.hcy.admin.validate.common.PageParam; +import com.hcy.admin.validate.sparePart.SparePartParam; +import com.hcy.admin.vo.sparePart.SparePartListVo; +import com.hcy.admin.vo.sparePart.SparePartDetailVo; +import com.hcy.common.constant.GlobalConstant; +import com.hcy.common.core.PageResult; +import com.hcy.common.entity.activity.Activity; +import com.hcy.common.entity.sparePart.SparePart; +import com.hcy.common.mapper.sparePart.SparePartMapper; +import com.hcy.common.utils.TimeUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.util.Assert; + +import javax.annotation.Resource; + +import java.util.*; + +/** + * 备件信息实现类 + */ +@Service +public class SparePartServiceImpl implements ISparePartService { + + @Resource + SparePartMapper sparePartMapper; + + /** + * 备件信息列表 + * + * @author hcy + * @param pageParam 分页参数 + * @param params 搜索参数 + * @return PageResult + */ + @Override + public PageResult list(PageParam pageParam, Map params) { + Integer page = pageParam.getPageNo(); + Integer limit = pageParam.getPageSize(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("is_delete", 0); + queryWrapper.orderByDesc("id"); + + sparePartMapper.setSearch(queryWrapper, params, new String[]{ + "=:sparePartsCode@spare_parts_code:str", + "like:sparePartsName@spare_parts_name:str", + "=:owningWarehouse@owning_warehouse:long", + "=:specificationsModel@specifications_model:str", + "=:unit:str", + "=:quantity:long", + }); + + IPage iPage = sparePartMapper.selectPage(new Page<>(page, limit), queryWrapper); + + List list = new LinkedList<>(); + for(SparePart item : iPage.getRecords()) { + SparePartListVo vo = new SparePartListVo(); + BeanUtils.copyProperties(item, vo); + vo.setCreateTime(TimeUtil.timestampToDate(item.getCreateTime())); + vo.setUpdateTime(TimeUtil.timestampToDate(item.getUpdateTime())); + list.add(vo); + } + + return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list); + } + + /** + * 备件信息详情 + * + * @author hcy + * @param id 主键参数 + * @return SparePart + */ + @Override + public SparePartDetailVo detail(Integer id) { + SparePart model = sparePartMapper.selectOne( + new QueryWrapper() + .eq("id", id) + .eq("is_delete", 0) + .last("limit 1")); + + Assert.notNull(model, "数据不存在"); + + SparePartDetailVo vo = new SparePartDetailVo(); + BeanUtils.copyProperties(model, vo); + return vo; + } + + /** + * 备件信息新增 + * + * @author hcy + * @param sparePartParam 参数 + */ + @Override + public void add(SparePartParam sparePartParam) { + SparePart model = new SparePart(); + model.setSparePartsCode(sparePartParam.getSparePartsCode()); + model.setSparePartsName(sparePartParam.getSparePartsName()); + model.setOwningWarehouse(sparePartParam.getOwningWarehouse()); + model.setSpecificationsModel(sparePartParam.getSpecificationsModel()); + model.setUnit(sparePartParam.getUnit()); + model.setQuantity(sparePartParam.getQuantity()); + model.setCreateTime(System.currentTimeMillis() / 1000); + sparePartMapper.insert(model); + } + + /** + * 备件信息编辑 + * + * @author hcy + * @param sparePartParam 参数 + */ + @Override + public void edit(SparePartParam sparePartParam) { + SparePart model = sparePartMapper.selectOne( + new QueryWrapper() + .eq("id", sparePartParam.getId()) + .eq("is_delete", 0) + .last("limit 1")); + + Assert.notNull(model, "数据不存在!"); + + model.setId(sparePartParam.getId()); + model.setSparePartsCode(sparePartParam.getSparePartsCode()); + model.setSparePartsName(sparePartParam.getSparePartsName()); + model.setOwningWarehouse(sparePartParam.getOwningWarehouse()); + model.setSpecificationsModel(sparePartParam.getSpecificationsModel()); + model.setUnit(sparePartParam.getUnit()); + model.setQuantity(sparePartParam.getQuantity()); + sparePartMapper.updateById(model); + } + + /** + * 备件信息删除 + * + * @author hcy + * @param ids 主键ID + */ + @Override + public void del(List ids) { + List modelList = sparePartMapper.selectList( + new QueryWrapper() + .in("id", ids)); + + + Assert.notNull(modelList, "数据不存在!"); + // GlobalConstant.NOT_DELETE 调用未删除常量 + // GlobalConstant.DELETE 删除标识 + + for (SparePart sparePart : modelList) { + sparePart.setIsDelete(GlobalConstant.DELETE); + sparePart.setDeleteTime(System.currentTimeMillis() / 1000); + sparePartMapper.updateById(sparePart);// 进行伪删除 根据id把is_delete修改成1 + } + } + +} diff --git a/admin/src/main/java/com/hcy/admin/service/way/IDevPayWayService.java b/admin/src/main/java/com/hcy/admin/service/way/IDevPayWayService.java deleted file mode 100644 index 3ee3df1..0000000 --- a/admin/src/main/java/com/hcy/admin/service/way/IDevPayWayService.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hcy.admin.service.way; - -import com.hcy.admin.validate.way.DevPayWayParam; -import com.hcy.admin.vo.way.DevPayWayListVo; - -import java.util.List; -import java.util.Map; - -/** - * 支付方式服务接口类 - */ -public interface IDevPayWayService { - - /** - * 支付方式列表 - * - * @return PageResult - */ - Map> listPage(); - - - /** - * 支付方式编辑 - * - * @param devPayWayParam 参数 - */ - void edit(List devPayWayParam); - -} diff --git a/admin/src/main/java/com/hcy/admin/service/way/impl/DevPayWayServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/way/impl/DevPayWayServiceImpl.java deleted file mode 100644 index 2173fe3..0000000 --- a/admin/src/main/java/com/hcy/admin/service/way/impl/DevPayWayServiceImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.hcy.admin.service.way.impl; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.github.yulichang.query.MPJQueryWrapper; -import com.google.common.collect.Maps; -import com.hcy.admin.service.way.IDevPayWayService; -import com.hcy.admin.validate.way.DevPayWayParam; -import com.hcy.admin.vo.way.DevPayWayListVo; -import com.hcy.common.entity.way.DevPayWay; -import com.hcy.common.enums.ClientEnum; -import com.hcy.common.enums.OrderPlayTypeEnum; -import com.hcy.common.enums.StatusEnum; -import com.hcy.common.exception.OperateException; -import com.hcy.common.mapper.way.DevPayWayMapper; -import com.hcy.common.utils.UrlUtil; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.Assert; - -import javax.annotation.Resource; -import java.util.Arrays; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; - -/** - * 支付方式实现类 - */ -@Service -public class DevPayWayServiceImpl extends ServiceImpl implements IDevPayWayService { - - @Resource - DevPayWayMapper devPayWayMapper; - - /** - * 支付方式列表 - * - * @return PageResult - */ - @Override - public Map> listPage() { - Map map = OrderPlayTypeEnum.getMap(); - Map clientMap = ClientEnum.getMap(); - Map> devPayWayListVoMap = Maps.newHashMap(); - - MPJQueryWrapper mpjQueryWrapper = new MPJQueryWrapper() - .selectAll(DevPayWay.class) - .select("pay.name as payName, pay.image as payImage, pay.pay_way as payWay") - .innerJoin("la_dev_pay pay ON pay.id=t.pay_id") - .orderByDesc(Arrays.asList("t.id")); - List list = devPayWayMapper.selectJoinList(DevPayWayListVo.class, mpjQueryWrapper); - - - List minprogram = new LinkedList<>(); - List officialAccounts = new LinkedList<>(); - List h5 = new LinkedList<>(); - List other = new LinkedList<>(); - - //场景:1-微信小程序;2-微信公众号;3-H5;4-PC商城;5-APP; - list.forEach(item -> { - item.setPayWayDesc(map.get(item.getPayId())); - item.setSceneDesc(clientMap.get(item.getScene())); - item.setPayImage(UrlUtil.toAbsoluteUrl(item.getPayImage())); - Integer scene = item.getScene(); - switch (scene) { - case 1: - minprogram.add(item); - devPayWayListVoMap.put(item.getId(), minprogram); - break; - case 2: - officialAccounts.add(item); - devPayWayListVoMap.put(item.getId(), officialAccounts); - break; - case 3: - h5.add(item); - devPayWayListVoMap.put(item.getId(), h5); - break; - default: - other.add(item); - devPayWayListVoMap.put(item.getId(), other); - break; - } - }); - return devPayWayListVoMap; - } - - - /** - * 支付方式编辑 - * - * @param devPayWayParam 参数 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void edit(List devPayWayParam) { - for (DevPayWayParam payWayParam : devPayWayParam) { - DevPayWay model = devPayWayMapper.selectOne( - new QueryWrapper() - .eq("id", payWayParam.getId()) - .last("limit 1")); - - Assert.notNull(model, "数据不存在!"); - if (StatusEnum.NOT_ENABLE.getCode() == payWayParam.getStatus()) { - throw new OperateException("小程序/公众号默认需要至少开启一个支付状态"); - } - model.setId(payWayParam.getId()); - model.setScene(payWayParam.getScene()); - model.setPayId(payWayParam.getPayId()); - model.setIsDefault(payWayParam.getIsDefault()); - model.setStatus(payWayParam.getStatus()); - devPayWayMapper.updateById(model); - } - } - -} diff --git a/admin/src/main/java/com/hcy/admin/validate/sparePart/SparePartParam.java b/admin/src/main/java/com/hcy/admin/validate/sparePart/SparePartParam.java new file mode 100644 index 0000000..2b97680 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/validate/sparePart/SparePartParam.java @@ -0,0 +1,56 @@ +package com.hcy.admin.validate.sparePart; + + +import com.hcy.common.validator.annotation.IDMust; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.hibernate.validator.constraints.Length; + +import lombok.Data; +import javax.validation.constraints.*; +import java.io.Serializable; +import java.util.List; + +/** + * 备件信息参数 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class SparePartParam implements Serializable { + + private static final long serialVersionUID = 1L; + + public interface create{} + public interface update{} + public interface delete{} + + @IDMust(message = "id参数必传且需大于0", groups = {update.class, delete.class}) + private Integer id; + + @NotNull(message = "sparePartsCode参数缺失", groups = {create.class, update.class}) + @Length(max = 255, message = "sparePartsCode参数不能超出255个字符", groups = {create.class, update.class}) + private String sparePartsCode; + + @NotNull(message = "sparePartsName参数缺失", groups = {create.class, update.class}) + @Length(max = 255, message = "sparePartsName参数不能超出255个字符", groups = {create.class, update.class}) + private String sparePartsName; + + @NotNull(message = "owningWarehouse参数缺失", groups = {create.class, update.class}) + @DecimalMin(value = "0", message = "owningWarehouse参数值不能少于0", groups = {create.class, update.class}) + private Long owningWarehouse; + + @NotNull(message = "specificationsModel参数缺失", groups = {create.class, update.class}) + @Length(max = 255, message = "specificationsModel参数不能超出255个字符", groups = {create.class, update.class}) + private String specificationsModel; + + @NotNull(message = "unit参数缺失", groups = {create.class, update.class}) + @Length(max = 11, message = "unit参数不能超出11个字符", groups = {create.class, update.class}) + private String unit; + + @NotNull(message = "quantity参数缺失", groups = {create.class, update.class}) + @DecimalMin(value = "0", message = "quantity参数值不能少于0", groups = {create.class, update.class}) + private Long quantity; + + private List ids; //备件id集合 +} diff --git a/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartDetailVo.java b/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartDetailVo.java new file mode 100644 index 0000000..e3a60d6 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartDetailVo.java @@ -0,0 +1,23 @@ +package com.hcy.admin.vo.sparePart; + +import lombok.Data; + +import java.io.Serializable; + +/** + * SparePartVo + */ +@Data +public class SparePartDetailVo implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer id; // 主键id + private String sparePartsCode; // 备件编码 + private String sparePartsName; // 备件名称 + private Long owningWarehouse; // 所属仓库 + private String specificationsModel; // 规格型号 + private String unit; // 单位 + private Long quantity; // 库存数量 + +} diff --git a/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartListVo.java b/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartListVo.java new file mode 100644 index 0000000..4c02ce3 --- /dev/null +++ b/admin/src/main/java/com/hcy/admin/vo/sparePart/SparePartListVo.java @@ -0,0 +1,25 @@ +package com.hcy.admin.vo.sparePart; + +import lombok.Data; + +import java.io.Serializable; + +/** + * SparePartVo + */ +@Data +public class SparePartListVo implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer id; // 主键id + private String sparePartsCode; // 备件编码 + private String sparePartsName; // 备件名称 + private Long owningWarehouse; // 所属仓库 + private String specificationsModel; // 规格型号 + private String unit; // 单位 + private Long quantity; // 库存数量 + private String createTime; // 创建时间 + private String updateTime; // 更新时间 + +} diff --git a/admin/src/main/resources/application-dev.yml b/admin/src/main/resources/application-dev.yml index 7fd759f..91e6ad3 100644 --- a/admin/src/main/resources/application-dev.yml +++ b/admin/src/main/resources/application-dev.yml @@ -6,7 +6,7 @@ like: spring: # 数据源配置 datasource: - url: jdbc:mysql://192.168.4.107:3306/homemaking?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false + url: jdbc:mysql://192.168.4.107:3306/charging_pile?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false type: com.zaxxer.hikari.HikariDataSource # 数据源类型 driver-class-name: com.mysql.jdbc.Driver # MySql的驱动 username: root # 数据库账号 diff --git a/admin/target/classes/application-dev.yml b/admin/target/classes/application-dev.yml index 7fd759f..91e6ad3 100644 --- a/admin/target/classes/application-dev.yml +++ b/admin/target/classes/application-dev.yml @@ -6,7 +6,7 @@ like: spring: # 数据源配置 datasource: - url: jdbc:mysql://192.168.4.107:3306/homemaking?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false + url: jdbc:mysql://192.168.4.107:3306/charging_pile?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false type: com.zaxxer.hikari.HikariDataSource # 数据源类型 driver-class-name: com.mysql.jdbc.Driver # MySql的驱动 username: root # 数据库账号 diff --git a/common/src/main/java/com/hcy/common/entity/setting/DictData.java b/common/src/main/java/com/hcy/common/entity/setting/DictData.java index 81215bf..21b9ff0 100644 --- a/common/src/main/java/com/hcy/common/entity/setting/DictData.java +++ b/common/src/main/java/com/hcy/common/entity/setting/DictData.java @@ -26,5 +26,4 @@ public class DictData implements Serializable { private Long createTime; // 创建时间 private Long updateTime; // 更新时间 private Long deleteTime; // 删除时间 - } diff --git a/common/src/main/java/com/hcy/common/entity/sparePart/SparePart.java b/common/src/main/java/com/hcy/common/entity/sparePart/SparePart.java new file mode 100644 index 0000000..8d4e021 --- /dev/null +++ b/common/src/main/java/com/hcy/common/entity/sparePart/SparePart.java @@ -0,0 +1,31 @@ +package com.hcy.common.entity.sparePart; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; +import java.sql.Date; + +/** + * 备件信息实体 + */ +@Data +public class SparePart implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value="id", type= IdType.AUTO) + private Integer id; // 主键id + private String sparePartsCode; // 备件编码 + private String sparePartsName; // 备件名称 + private Long owningWarehouse; // 所属仓库 + private String specificationsModel; // 规格型号 + private String unit; // 单位 + private Long quantity; // 库存数量 + private Integer isDelete; // 是否删除: [0=否, 1=是] + private Long createTime; // 创建时间 + private Long updateTime; // 更新时间 + private Long deleteTime; // 删除时间 + +} \ No newline at end of file diff --git a/common/src/main/java/com/hcy/common/mapper/pay/DevPayMapper.java b/common/src/main/java/com/hcy/common/mapper/pay/DevPayMapper.java deleted file mode 100644 index c85b8fb..0000000 --- a/common/src/main/java/com/hcy/common/mapper/pay/DevPayMapper.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hcy.common.mapper.pay; - -import com.hcy.common.core.basics.IBaseMapper; -import com.hcy.common.entity.pay.DevPay; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import org.apache.ibatis.annotations.Select; -import org.springframework.core.annotation.Order; - -/** - * 支付配置Mapper - */ -@Mapper() -@Order(0) -public interface DevPayMapper extends IBaseMapper { - - @Select("Select * from la_dev_pay where pay_way = #{payWay} limit 1") - DevPay getEntityByPayWay(@Param("payWay") Integer payWay); -} diff --git a/common/src/main/java/com/hcy/common/mapper/sparePart/SparePartMapper.java b/common/src/main/java/com/hcy/common/mapper/sparePart/SparePartMapper.java new file mode 100644 index 0000000..c389888 --- /dev/null +++ b/common/src/main/java/com/hcy/common/mapper/sparePart/SparePartMapper.java @@ -0,0 +1,13 @@ +package com.hcy.common.mapper.sparePart; + + +import com.hcy.common.core.basics.IBaseMapper; +import com.hcy.common.entity.sparePart.SparePart; +import org.apache.ibatis.annotations.Mapper; + +/** + * 备件信息Mapper + */ +@Mapper +public interface SparePartMapper extends IBaseMapper { +} diff --git a/front/src/main/java/com/hcy/front/service/system/ISystemDevPayWayService.java b/front/src/main/java/com/hcy/front/service/system/ISystemDevPayWayService.java deleted file mode 100644 index a49cd35..0000000 --- a/front/src/main/java/com/hcy/front/service/system/ISystemDevPayWayService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hcy.front.service.system; - -import com.hcy.front.vo.system.SystemDevPayWayDetailVo; - -import java.util.List; -import java.util.Map; - -/** - * 支付方式服务接口类 - */ -public interface ISystemDevPayWayService { - - /** - * 支付方式列表 - * - * @author panweiliang - * @return Map - */ - Map list(Integer scene, Integer orderId, String type); - - - -} diff --git a/front/src/main/java/com/hcy/front/service/system/impl/SystemDevPayWayServiceImpl.java b/front/src/main/java/com/hcy/front/service/system/impl/SystemDevPayWayServiceImpl.java deleted file mode 100644 index d9e42d5..0000000 --- a/front/src/main/java/com/hcy/front/service/system/impl/SystemDevPayWayServiceImpl.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.hcy.front.service.system.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.github.yulichang.query.MPJQueryWrapper; -import com.hcy.common.entity.order.Order; -import com.hcy.common.entity.user.User; -import com.hcy.common.entity.way.DevPayWay; -import com.hcy.common.enums.OrderStatusEnum; -import com.hcy.common.enums.PaymentEnum; -import com.hcy.common.mapper.order.OrderMapper; -import com.hcy.common.mapper.user.UserMapper; -import com.hcy.common.mapper.way.DevPayWayMapper; -import com.hcy.common.utils.UrlUtil; -import com.hcy.front.FrontThreadLocal; -import com.hcy.front.service.system.ISystemDevPayWayService; -import com.hcy.front.vo.system.SystemDevPayWayDetailVo; -import org.springframework.stereotype.Service; -import org.springframework.util.Assert; - -import javax.annotation.Resource; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; - -/** - * 支付方式实现类 - */ -@Service -public class SystemDevPayWayServiceImpl implements ISystemDevPayWayService { - - @Resource - DevPayWayMapper devPayWayMapper; - - @Resource - private UserMapper userMapper; - - @Resource - private OrderMapper orderMapper; - - /** - * 支付方式列表 - * - * @author panweiliang - * @return List - */ - @Override - public Map list(Integer scene, Integer orderId, String type) { - MPJQueryWrapper mpjQueryWrapper = new MPJQueryWrapper() - .selectAll(DevPayWay.class) - .select("pay.name as payName, pay.image as payImage, pay.pay_way as payWay") - .innerJoin("la_dev_pay pay ON pay.id=t.pay_id") - .eq("t.status", "1") - .eq("t.scene", scene) - .orderByDesc(Arrays.asList("t.id")); - if ("recharge".equals(type)){ - mpjQueryWrapper.nested( wq -> wq.ne("pay_id",2)); - } - List list = devPayWayMapper.selectJoinList(SystemDevPayWayDetailVo.class, mpjQueryWrapper); - //场景:1-微信小程序;2-微信公众号;3-H5;4-PC商城;5-APP; - list.forEach(item -> { - item.setPayImage(UrlUtil.toAbsoluteUrl(item.getPayImage())); - }); - - Map map = new LinkedHashMap<>(); - map.put("payWayList", list); - - // 如果是充值订单直接返回支付方式 - if("recharge".equals(type)){ - return map; - } - - // 获取用户余额信息 - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.select(User::getMoney); - lambdaQueryWrapper.eq(User::getId, FrontThreadLocal.getUserId()); - lambdaQueryWrapper.eq(User::getIsDelete,0); - lambdaQueryWrapper.last("limit 1"); - User user = userMapper.selectOne(lambdaQueryWrapper); - //查询预约订单 - LambdaQueryWrapper orderLambdaQueryWrapper = new LambdaQueryWrapper<>(); - orderLambdaQueryWrapper.select(Order::getCancelTime); - orderLambdaQueryWrapper.eq(Order::getId,orderId); - orderLambdaQueryWrapper.eq(Order::getPayStatus, PaymentEnum.UN_PAID.getCode()); - orderLambdaQueryWrapper.eq(Order::getOrderStatus, OrderStatusEnum.WAIT_PAY.getStatus()); - orderLambdaQueryWrapper.eq(Order::getIsDelete,0); - orderLambdaQueryWrapper.last("limit 1"); - Order order = orderMapper.selectOne(orderLambdaQueryWrapper); - Assert.notNull(order, "此订单未处于待支付状态!"); - - // 预约订单返回余额支付和过期时间 - map.put("money",user.getMoney()); - map.put("cancelTime", order.getCancelTime()); - return map; - } -} diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-22_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-22_1.log.gz new file mode 100644 index 0000000..ddb32a9 Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-22_1.log.gz differ diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-25_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-25_1.log.gz new file mode 100644 index 0000000..a86c520 Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-ERROR-2024-07-25_1.log.gz differ diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-22_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-22_1.log.gz new file mode 100644 index 0000000..173c6bb Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-22_1.log.gz differ diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-25_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-25_1.log.gz new file mode 100644 index 0000000..1d68f02 Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-INFO-2024-07-25_1.log.gz differ diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-22_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-22_1.log.gz new file mode 100644 index 0000000..a689f00 Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-22_1.log.gz differ diff --git a/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-25_1.log.gz b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-25_1.log.gz new file mode 100644 index 0000000..6dce1d1 Binary files /dev/null and b/www/wwwroot/java-smyy/server/like-admin/admin-log4j2-WARN-2024-07-25_1.log.gz differ