lidongdong
2022-11-08 fe3d8816882117d963c93b678573bb93f0047911
Merge remote-tracking branch 'origin/huacheng_test' into huacheng_test
31个文件已添加
22个文件已修改
2599 ■■■■■ 已修改文件
flower_city/pom.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/TransactionEventController.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/ITransactionEventService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java 168 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComPropertyApi.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/CommunityConvenientApi.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/IndexApi.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/SystemManagementApi.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientElevatingPointDTO.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientGoodsCategoryDTO.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientMerchantDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/PageConvenientElevatingPointDTO.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/PageConvenientGoodsCategoryDTO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopFlowerGoodsDTO.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopFlowerGoodsDTO.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopFlowerStoreDTO.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/user/SysUserFeedbackDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/DataCount.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientElevatingPointVO.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientGoodsCategoryVO.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/AddShopFlowerGoodsAttrVO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/AddShopFlowerGoodsVO.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopFlowerGoodsAttrVO.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopFlowerGoodsVO.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/PageShopFlowerGoodsVO.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 93 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComActPorceedingsApi.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ConvenientApi.java 123 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopFlowerGoodsAttrDAO.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopFlowerGoodsDAO.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ConvenientElevatingPointDAO.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ConvenientGoodsCategoryDAO.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComShopFlowerGoodsAttrDO.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComShopFlowerGoodsDO.java 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientElevatingPointDO.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientGoodsCategoryDO.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientMerchantDO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ConvenientElevatingPointService.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ConvenientGoodsCategoryService.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientElevatingPointServiceImpl.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientGoodsCategoryServiceImpl.java 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComConvenientElevatingPointMapper.xml 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComShopFlowerGoodsAttrMapper.xml 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComShopFlowerGoodsMapper.xml 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientGoodsCategoryMapper.xml 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientMerchantMapper.xml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserFeedbackDO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/pom.xml
@@ -93,6 +93,20 @@
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.1</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>4.1.1</version>
        </dependency>
        <dependency>
            <groupId>com.icexxx</groupId>
            <artifactId>iceworkday</artifactId>
            <version>2.0.2.0</version>
flower_city/src/main/java/com/dg/core/controller/TransactionEventController.java
@@ -4,23 +4,34 @@
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.AjaxResult;
import com.dg.core.db.gen.entity.Slideshow;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.manual.pojo.QueryResults;
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import com.dg.core.file.FtpConstants;
import com.dg.core.file.MimeTypeUtils;
import com.dg.core.file.SFTPUtil;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.service.ITransactionEventService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import static com.dg.core.file.FileTypeUploadUtils.assertAllowed;
@Api(tags = {"导办事项管理接口"})
@RestController
@@ -151,7 +162,11 @@
    {
        Assert.notNull(Id, "Id 不能为空");
        return toAjax(iTransactionEventService.deleteConfigById(Id));
        int i = iTransactionEventService.deleteConfigById(Id);
        if (i>0)
           return  ResultData.success("删除成功");
        else
          return  ResultData.error("删除失败可能该工单有单据");
    }
    /**
@@ -282,6 +297,19 @@
        return getDataTable(iTransactionEventService.selectClassifyList(ids));
    }
    @ApiOperation("文件导入")
    @PostMapping("/import")
    public ResultData uploadFiles(MultipartFile file) throws Exception
    {
        boolean a = false;
        String fileName = file.getOriginalFilename();
        boolean b = iTransactionEventService.batchImport(fileName, file);
        if (b){
            return  ResultData.success("导入成功");
        }
        return   ResultData.error("导入失败");
    }
flower_city/src/main/java/com/dg/core/service/ITransactionEventService.java
@@ -7,6 +7,7 @@
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import org.springframework.data.repository.query.Param;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@@ -150,5 +151,6 @@
     * @return
     */
    List<TransactionEvent> selectClassifyList(List<String> ids);
    boolean batchImport(String fileName, MultipartFile file) ;
}
flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java
@@ -5,18 +5,24 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.gen.mapper.AutomessageTransactionEventInterviewMapper;
import com.dg.core.db.gen.mapper.KeywordMapper;
import com.dg.core.db.gen.mapper.OrganizationChartMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
import com.dg.core.db.gen.mapper.*;
import com.dg.core.db.manual.pojo.QueryResults;
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import com.dg.core.service.ITransactionEventService;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.io.IOException;
import java.io.InputStream;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@@ -36,6 +42,10 @@
    @Resource
    private AutomessageTransactionEventInterviewMapper automessageTransactionEventInterviewMapper;
    @Resource
    private GuideRepairOrderMapper guideRepairOrderMapper;
    @Override
    public TransactionEvent selectConfigData(String Id, SysUser sysUser) {
@@ -88,7 +98,12 @@
    @Override
    public int deleteConfigById(String Id) {
        List<GuideRepairOrder> guideRepairOrders = guideRepairOrderMapper
                .selectList(new QueryWrapper<GuideRepairOrder>().lambda().eq(GuideRepairOrder::getMatterId, Id));
        if (guideRepairOrders.size() == 0){
        return baseMapper.deleteConfigById(Id);
        }
        return 0;
    }
    @Override
@@ -243,4 +258,149 @@
        return baseMapper.selectList(new QueryWrapper<TransactionEvent>().lambda());
        }
    }
    @Override
    public boolean batchImport(String fileName, MultipartFile file)  {
        boolean notNull = false;
        if (!fileName.matches("^.+\\.(?i)(xls)$") && !fileName.matches("^.+\\.(?i)(xlsx)$")) {
            throw   new RuntimeException("选择文件格式不正确,请下载模板上传");
        }
        boolean isExcel2003 = true;
        if (fileName.matches("^.+\\.(?i)(xlsx)$")) {
            isExcel2003 = false;
        }
        InputStream is = null;
        try {
            is = file.getInputStream();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        Workbook wb = null;
        if (isExcel2003) {
            try {
                wb = new HSSFWorkbook(is);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        } else {
            try {
                wb = new XSSFWorkbook(is);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        // 获取excel的sheet页数
        int numberOfSheets = wb.getNumberOfSheets();
        //获取excel字段名称进行比较
        Sheet sheetAt = wb.getSheetAt(0);
        Row row1 = sheetAt.getRow(2);
        TransactionEvent transactionEvent = baseMapper.selectOne(new QueryWrapper<TransactionEvent>().lambda().eq(TransactionEvent::getMatterName, row1.getCell(1).getStringCellValue()));
        boolean isAdd=false;
        if(transactionEvent==null){
            transactionEvent=new TransactionEvent();
            isAdd=true;
        }
        transactionEvent.setMatterName(row1.getCell(1).getStringCellValue());
        Row row2 = sheetAt.getRow(3);
        transactionEvent.setSetGist("<p>"+row2.getCell(1).getStringCellValue()+"</p>");
        Row row3 = sheetAt.getRow(4);
        Row row4 = sheetAt.getRow(5);
        transactionEvent.setBasicInformation("<p> 事项名称:"+row1.getCell(1).getStringCellValue()+"<br />"
            +row3.getCell(0).getStringCellValue()+":"+row3.getCell(1).getStringCellValue()+"<br />"
            +row3.getCell(3).getStringCellValue()+":"+row3.getCell(4).getStringCellValue()+"<br />"
                +row4.getCell(0).getStringCellValue()+":"+row4.getCell(1).getStringCellValue()+"</p>");
        int i=7;
        String applicationMaterial="<p>";
        while (true){
            Row row = sheetAt.getRow(i);
            if (row.getCell(0).getStringCellValue().equals("办理途径、条件和注意事项")){
                i=i+2;
                break;
            }
            applicationMaterial=applicationMaterial+"办理区域:"+row.getCell(0).getStringCellValue()+"<br />"
                    +"咨询电话:"+row.getCell(1).getStringCellValue()+"<br />"
                    +"办公地址:"+row.getCell(2).getStringCellValue()+"<br />"
                    +"办公时间:"+row.getCell(3).getStringCellValue()+"<br />";
            applicationMaterial=applicationMaterial+"<br />";
            i++;
        }
        applicationMaterial=applicationMaterial+"</p>";
        transactionEvent.setApplicationMaterial(applicationMaterial);
        String acceptConditions="<p>";
        while (true){
            Row row = sheetAt.getRow(i);
            if (row.getCell(0).getStringCellValue().equals("(二)网上申报")){
                i=i+1;
                break;
            }
            acceptConditions=acceptConditions+row.getCell(0).getStringCellValue()+"&nbsp; "
                    +row.getCell(1).getStringCellValue()+"&nbsp; "
                    +row.getCell(2).getStringCellValue()+"&nbsp; ";
            acceptConditions=acceptConditions+"<br />";
            i++;
        }
        acceptConditions=acceptConditions+"</p>";
        transactionEvent.setAcceptConditions(acceptConditions);
        String rates="<p>";
        while (true){
            Row row = sheetAt.getRow(i);
            if (row.getCell(0).getStringCellValue().equals("(三)手机移动申报")){
                i=i+1;
                break;
            }
            rates=rates+row.getCell(0).getStringCellValue()+"&nbsp; "
                    +row.getCell(1).getStringCellValue()+"&nbsp; "
                    +row.getCell(2).getStringCellValue()+"&nbsp; ";
            rates=rates+"<br />";
            i++;
        }
        rates=rates+"</p>";
        transactionEvent.setRates(rates);
        String transactionArea="<p>";
        while (true){
            Row row = sheetAt.getRow(i);
            if (row.getCell(0).getStringCellValue().equals("(四)经营许可(备案)事项程序运行图谱(附电子版)")){
                i=i+1;
                break;
            }
            transactionArea=transactionArea+row.getCell(0).getStringCellValue()+"&nbsp; "
                    +row.getCell(1).getStringCellValue()+"&nbsp; "
                    +row.getCell(2).getStringCellValue()+"&nbsp; ";
            transactionArea=transactionArea+"<br />";
            i++;
        }
        transactionArea=transactionArea+"</p>";
        transactionEvent.setTransactionArea(transactionArea);
        String handlingProcedures="<p>";
        while (true){
            Row row = sheetAt.getRow(i);
            if (row.getCell(0).getStringCellValue().equals("(五)经营许可(备案)事项实施内容一览表(附电子版)")){
                i=i+1;
                break;
            }
            handlingProcedures=handlingProcedures+row.getCell(0).getStringCellValue()+"&nbsp; "
                    +row.getCell(1).getStringCellValue()+"&nbsp; "
                    +row.getCell(2).getStringCellValue()+"&nbsp; ";
            handlingProcedures=handlingProcedures+"<br />";
            i++;
        }
        handlingProcedures=handlingProcedures+"</p>";
        transactionEvent.setHandlingProcedures(handlingProcedures);
        int ans;
        if (isAdd){
            ans= baseMapper.insert(transactionEvent);
        }else {
            ans =baseMapper.updateById(transactionEvent);
        }
       if (ans>0){
           return  true;
       }
       return  false;
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComPropertyApi.java
@@ -2,7 +2,10 @@
import javax.annotation.Resource;
import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO;
import com.panzhihua.common.service.user.UserService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -30,6 +33,8 @@
public class ComPropertyApi extends BaseController {
    @Resource
    private CommunityService communityService;
    @Resource
    private UserService userService;
    /**
     * 分页查询所有数据
@@ -50,4 +55,17 @@
    public R detailProperty(@RequestParam("id") Long id) {
        return this.communityService.detailProperty(id);
    }
    @ApiOperation("新增投诉建议或问题留言")
    @PostMapping("addFeedBack")
    public R addFeedBack(@RequestBody SysUserFeedbackDTO sysUserFeedbackDTO){
        return userService.addFeedback(sysUserFeedbackDTO);
    }
    @ApiOperation("查看自己的投诉建议或问题留言记录")
    @GetMapping("myFeedBack")
    public R myFeedBack(@ApiParam("类型:1问题留言2投诉建议") @RequestParam(value = "type",required = false)Integer type){
        return userService.myFeedBack(this.getLoginUserInfo().getUserId(),type);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java
@@ -464,4 +464,10 @@
    public R detailCommunity(@RequestParam("id") Long id) {
        return communityService.detailCommunity(id);
    }
    @ApiOperation(value = "获取问题清单,需求清单,报道服务活动数量",response = DataCount.class)
    @GetMapping("/dataCount")
    public R dataCount(){
        return communityService.dataCount();
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/CommunityConvenientApi.java
@@ -10,6 +10,9 @@
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import com.panzhihua.common.model.dtos.community.convenient.*;
import com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientGoodsCategoryVO;
import com.panzhihua.common.utlis.MimeTypeUtils;
import org.apache.commons.io.FilenameUtils;
import org.springframework.beans.factory.annotation.Value;
@@ -36,12 +39,6 @@
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtCategoryDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtServeDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ResetPasswordConvenientMerchantDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComActVO;
@@ -371,4 +368,68 @@
    public R getAllServiceCategories() {
        return communityService.getAllServiceCategories(this.getAreaCode());
    }
    @ApiOperation(value = "分页查询自提点", response = ConvenientElevatingPointVO.class)
    @PostMapping("/point/page")
    public R pagePoint(@RequestBody PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO) {
        return communityService.pagePoint(pageConvenientElevatingPointDTO);
    }
    @ApiOperation(value = "新增自提点")
    @PostMapping("/point/add")
    public R addPoint(@RequestBody @Validated(AddGroup.class) ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        convenientElevatingPointDTO.setCreatedBy(this.getUserId());
        return communityService.addPoint(convenientElevatingPointDTO);
    }
    @ApiOperation(value = "编辑自提点")
    @PutMapping("/point/put")
    public R putPoint(@RequestBody @Validated(PutGroup.class) ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        convenientElevatingPointDTO.setUpdatedBy(this.getUserId());
        convenientElevatingPointDTO.setCreatedBy(this.getUserId());
        return communityService.putPoint(convenientElevatingPointDTO);
    }
    @ApiOperation(value = "删除自提点")
    @DeleteMapping("/point/delete")
    public R deletePoint(@RequestParam("pointId") @ApiParam(value = "自提点id", required = true)
                                           Long pointId) {
        return communityService.deletePoint(pointId, this.getUserId());
    }
    @ApiOperation(value = "新增商品分类")
    @PostMapping("/goodsCategory/add")
    public R addGoodsCategory(@RequestBody @Validated(AddGroup.class) ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        convenientGoodsCategoryDTO.setCreatedBy(this.getUserId());
        convenientGoodsCategoryDTO.setAreaCode(this.getAreaCode());
        return communityService.addGoodsCategory(convenientGoodsCategoryDTO);
    }
    @ApiOperation(value = "编辑商品分类")
    @PutMapping("/goodsCategory/put")
    public R putGoodsCategory(@RequestBody @Validated(PutGroup.class) ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        convenientGoodsCategoryDTO.setUpdatedBy(this.getUserId());
        return communityService.putGoodsCategory(convenientGoodsCategoryDTO);
    }
    @ApiOperation(value = "删除商品分类")
    @DeleteMapping("/goodsCategory/delete")
    public R deleteGoodsCategory(@RequestParam("categoryId") @ApiParam(value = "商品分类id", required = true) Long categoryId) {
        return communityService.deleteGoodsCategory(categoryId, this.getUserId());
    }
    @ApiOperation(value = "查询商品分类详情", response = ConvenientGoodsCategoryVO.class)
    @GetMapping("/goodsCategory/get")
    public R getGoodsCategory(@RequestParam("categoryId") @ApiParam(value = "商品分类id", required = true) Long categoryId) {
        return communityService.getGoodsCategory(categoryId);
    }
    @ApiOperation(value = "分页查询商品分类", response = ConvenientGoodsCategoryVO.class)
    @PostMapping("/goodsCategory/page")
    public R pageGoodsCategory(@RequestBody PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO) {
        pageConvenientGoodsCategoryDTO.setAreaCode(this.getAreaCode());
        return communityService.pageGoodsCategory(pageConvenientGoodsCategoryDTO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/IndexApi.java
@@ -235,5 +235,10 @@
    }
    @GetMapping("/communityList")
    @ApiOperation(value = "获取当前账号下的社区/村落列表",response = StreetVO.class)
    public R communityList(){
        return userService.communityList(this.getLoginUserInfo().getAccount(),this.getUserId());
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/SystemManagementApi.java
@@ -237,7 +237,7 @@
        return userService.deleteFeedback(id);
    }
    @ApiOperation("回复意见反馈")
    @ApiOperation("回复意见反馈或修改意见反馈回复")
    @PostMapping("feedback")
    public R replyFeedBack(@RequestBody SysUserFeedbackVO sysUserFeedbackVO){
        return userService.updateFeedBack(sysUserFeedbackVO);
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientElevatingPointDTO.java
New file
@@ -0,0 +1,76 @@
package com.panzhihua.common.model.dtos.community.convenient;
import com.panzhihua.common.validated.AddGroup;
import com.panzhihua.common.validated.PutGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * @ClassName: ConvenientElevatingPointDTO
 * @Author: yh
 * @Date: 2022/11/8 10:10
 * @Description: 新增/编辑便民服务自提点
 */
@Data
@ApiModel("新增/编辑便民服务自提点")
public class ConvenientElevatingPointDTO {
    @ApiModelProperty("自提点ID")
    @NotNull(groups = {PutGroup.class}, message = "自提点ID不能为空")
    private Long id;
    @ApiModelProperty("自提点名称")
    @NotBlank(groups = {AddGroup.class}, message = "自提点名称不能为空")
    @Length(groups = {AddGroup.class}, max = 30, message = "自提点名称最多支持30个字符")
    private String name;
    @ApiModelProperty("联系人")
    @NotBlank(groups = {AddGroup.class}, message = "联系人不能为空")
    private String contacts;
    @ApiModelProperty("联系电话")
    @NotBlank(groups = {AddGroup.class}, message = "联系电话不能为空")
    private String phone;
    @ApiModelProperty("微信账号")
    @NotBlank(groups = {AddGroup.class}, message = "微信账号不能为空")
    private String wechatAccount;
    @ApiModelProperty("所属地区")
    @NotBlank(groups = {AddGroup.class}, message = "所属地区不能为空")
    private String region;
    @ApiModelProperty("详细地址")
    @NotBlank(groups = {AddGroup.class}, message = "详细地址不能为空")
    private String address;
    @ApiModelProperty("纬度")
    @NotBlank(groups = {AddGroup.class}, message = "纬度不能为空")
    private String lat;
    @ApiModelProperty("经度")
    @NotBlank(groups = {AddGroup.class}, message = "经度不能为空")
    private String lon;
    @ApiModelProperty("状态,1.显示 2.隐藏")
    @NotNull(groups = {AddGroup.class}, message = "状态不能为空")
    private Integer businessStatus;
    @ApiModelProperty(value = "所属社区id")
    @NotNull(groups = {AddGroup.class}, message = "所属社区id不能为空")
    private Long communityId;
    @ApiModelProperty(value = "创建人", hidden = true)
    private Long createdBy;
    @ApiModelProperty(value = "更新人", hidden = true)
    private Long updatedBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientGoodsCategoryDTO.java
New file
@@ -0,0 +1,46 @@
package com.panzhihua.common.model.dtos.community.convenient;
import com.panzhihua.common.validated.AddGroup;
import com.panzhihua.common.validated.PutGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * @title: ConvenientGoodsCategoryDTO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 新增/编辑商品务分类
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Data
@ApiModel("新增/编辑商品务分类")
public class ConvenientGoodsCategoryDTO {
    @ApiModelProperty("分类ID")
    @NotNull(groups = {PutGroup.class}, message = "分类id不能为空")
    private Long id;
    @ApiModelProperty("分类名称")
    @NotBlank(groups = {AddGroup.class}, message = "分类名称不能为空")
    private String name;
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("权重")
    @NotNull(groups = {AddGroup.class}, message = "权重不能为空")
    private Integer weight;
    @ApiModelProperty(value = "创建人", hidden = true)
    private Long createdBy;
    @ApiModelProperty(value = "更新人", hidden = true)
    private Long updatedBy;
    private String areaCode;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientMerchantDTO.java
@@ -113,6 +113,9 @@
    private String areaCode;
    @ApiModelProperty("服务范围")
    private Integer serviceRange;
    public String getPeriod() {
        return period.name();
    }
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/PageConvenientElevatingPointDTO.java
New file
@@ -0,0 +1,41 @@
package com.panzhihua.common.model.dtos.community.convenient;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
/**
 * @title: PageConvenientElevatingPointDTO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 分页查询便民服务自提点请求参数
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Data
@ApiModel("分页查询便民服务自提点请求参数")
public class PageConvenientElevatingPointDTO {
    @ApiModelProperty("关键词")
    private String keyword;
    @ApiModelProperty("社区id")
    private Long communityId;
    @ApiModelProperty("营业状态(1.显示 2.隐藏)")
    private Integer businessStatus;
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    @NotNull(message = "分页参数不能为空")
    @Min(value = 1)
    private Long pageNum;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    @NotNull(message = "分页参数不能为空")
    @Min(value = 1)
    private Long pageSize;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/PageConvenientGoodsCategoryDTO.java
New file
@@ -0,0 +1,28 @@
package com.panzhihua.common.model.dtos.community.convenient;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @title: PageConvenientGoodsCategoryDTO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 分页查询商品分类请求参数
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Data
@ApiModel("分页查询商品分类请求参数")
public class PageConvenientGoodsCategoryDTO {
    @ApiModelProperty("分类名称")
    private String name;
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    private Long pageSize;
    private String areaCode;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/ComShopFlowerGoodsDTO.java
New file
@@ -0,0 +1,36 @@
package com.panzhihua.common.model.dtos.shop;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 查询商品请求参数
 */
@Data
@ApiModel("查询商品请求参数")
public class ComShopFlowerGoodsDTO {
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum = 1L;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    private Long pageSize = 10L;
    @ApiModelProperty("商品名称")
    private String name;
    @ApiModelProperty("店铺id")
    private Long storeId;
    @ApiModelProperty("商品状态(1.出售中  2.已下架  3.回收站)")
    private Integer status;
    @ApiModelProperty("配送方式(1.商家配送  2.快递物流)")
    private Integer deliveryType;
    @ApiModelProperty(hidden = true)
    private Long userId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopFlowerGoodsDTO.java
New file
@@ -0,0 +1,31 @@
package com.panzhihua.common.model.dtos.shop;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @auther yh
 * @describe 分页查询商品
 */
@ApiModel("分页查询商品")
@Data
public class PageComShopFlowerGoodsDTO {
    @ApiModelProperty(value = "商品名称")
    private String name;
    @ApiModelProperty(value = "店铺名称")
    private String storeName;
    @ApiModelProperty(value = "店铺Id")
    private Long storeId;
    @ApiModelProperty(value = "商品状态(1.出售中  2.已下架  3.回收站)", example = "1")
    private Integer status;
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    private Long pageSize;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/PageComShopFlowerStoreDTO.java
New file
@@ -0,0 +1,34 @@
package com.panzhihua.common.model.dtos.shop;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 分页查询店铺
 */
@Data
@ApiModel("分页查询店铺")
public class PageComShopFlowerStoreDTO {
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum = 1L;
    @ApiModelProperty(value = "商家姓名")
    private String contacts;
    @ApiModelProperty(value = "商家账号")
    private String account;
    @ApiModelProperty(value = "店铺名称")
    private String name;
    @ApiModelProperty(value = "配送方式(1.自提  2.快递)")
    private Integer deliveryType;
    @ApiModelProperty(value = "店铺状态(1.启用  2.禁用)")
    private Integer status;
    @ApiModelProperty(value = "分页-每页记录数", example = "10")
    private Long pageSize = 10L;
    @ApiModelProperty("店铺id")
    private Long storeId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/user/SysUserFeedbackDTO.java
@@ -47,4 +47,7 @@
    @ApiModelProperty(value = "状态 0", hidden = true)
    private Integer status;
    @ApiModelProperty("1投诉建议2问题留言")
    private Integer type;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/DataCount.java
New file
@@ -0,0 +1,16 @@
package com.panzhihua.common.model.vos.community;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("问题清单、需求清单、报到服务活动数量")
public class DataCount {
    @ApiModelProperty("问题清单数")
    private Integer questions;
    @ApiModelProperty("需求清单数")
    private Integer demands;
    @ApiModelProperty("报道服务活动数")
    private Integer activities;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientElevatingPointVO.java
New file
@@ -0,0 +1,94 @@
package com.panzhihua.common.model.vos.community.convenient;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @ClassName: ConvenientElevatingPointVO
 * @Author: yh
 * @Date: 2022/11/8 9:54
 * @Description: 便民服自提点
 */
@Data
@ApiModel("便民服自提点")
public class ConvenientElevatingPointVO {
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 自提点名称
     */
    @ApiModelProperty("自提点名称")
    private String name;
    /**
     * 社区id
     */
    @ApiModelProperty("社区id")
    private Long communityId;
    /**
     * 社区名称
     */
    @ApiModelProperty("社区名称")
    private String communityName;
    /**
     * 所属地区
     */
    @ApiModelProperty("所属地区")
    private String region;
    /**
     * 提货点地址
     */
    @ApiModelProperty("提货点地址")
    private String address;
    /**
     * 联系人
     */
    @ApiModelProperty("联系人")
    private String contacts;
    /**
     * 纬度
     */
    @ApiModelProperty("纬度")
    private String lat;
    /**
     * 经度
     */
    @ApiModelProperty("经度")
    private String lon;
    /**
     * 联系电话
     */
    @ApiModelProperty("联系电话")
    private String phone;
    /**
     * 微信账号
     */
    @ApiModelProperty("微信账号")
    private String wechatAccount;
    /**
     * 状态,1:显示,2:隐藏
     */
    @ApiModelProperty("状态,1:显示,2:隐藏")
    private Integer businessStatus;
    /**
     * 累计商品数量
     */
    @ApiModelProperty("累计商品数量")
    private Long cumulativeGoodsNum;
    /**
     * 待提货数量
     */
    @ApiModelProperty("待提货数量")
    private Long prepareGoodsNum;
    /**
     * 已提货数量
     */
    @ApiModelProperty("已提货数量")
    private Long alreadyGoodsNum;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientGoodsCategoryVO.java
New file
@@ -0,0 +1,40 @@
package com.panzhihua.common.model.vos.community.convenient;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * @title: ConvenientGoodsCategoryVO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 商品分类信息
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Data
@ApiModel("商品分类信息")
public class ConvenientGoodsCategoryVO {
    @ApiModelProperty("分类ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    @ApiModelProperty("分类名称")
    private String name;
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("权重")
    private Integer weight;
    @ApiModelProperty("创建人")
    private String createdBy;
    @ApiModelProperty("创建时间")
    private Date createdAt;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/AddShopFlowerGoodsAttrVO.java
New file
@@ -0,0 +1,30 @@
package com.panzhihua.common.model.vos.shop;
import com.panzhihua.common.validated.AddGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Digits;
import javax.validation.constraints.Min;
import java.math.BigDecimal;
/**
 * @auther yh
 * @describe
 */
@Data
@ApiModel("商品规格")
public class AddShopFlowerGoodsAttrVO {
    @ApiModelProperty("商品规格Id:编辑必传")
    private Long goodsAttrId;
    @ApiModelProperty("商品规格")
    private String goodsAttr;
    @ApiModelProperty("规格价格")
    @Min(groups = {AddGroup.class}, value = 0, message = "价格最小值为0")
    @Digits(groups = {AddGroup.class}, integer = 8, fraction = 2)
    private BigDecimal attrPrice;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/AddShopFlowerGoodsVO.java
New file
@@ -0,0 +1,57 @@
package com.panzhihua.common.model.vos.shop;
import com.panzhihua.common.validated.AddGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.Digits;
import javax.validation.constraints.Min;
import java.math.BigDecimal;
import java.util.List;
/**
 * @auther yh
 * @describe 商品
 */
@Data
@ApiModel("添加商品")
public class AddShopFlowerGoodsVO {
    @ApiModelProperty("店铺id")
    private Long storeId;
    @ApiModelProperty("商品名称")
    private String name;
    @ApiModelProperty("商品现价")
    @Min(groups = {AddGroup.class}, value = 0, message = "价格最小值为0")
    @Digits(groups = {AddGroup.class}, integer = 8, fraction = 2)
    private BigDecimal price;
    @ApiModelProperty("商品单位")
    private String unit;
    @ApiModelProperty("商品状态(1.上架  2.已下架  3.回收站)")
    private Integer status;
    @ApiModelProperty("商品主图")
    private String goodsPic;
    @ApiModelProperty("商品图片")
    private String images;
    @ApiModelProperty("商品详情")
    private String details;
    /**
     * 配送方式(1.商家配送 2.快递物流)
     */
    @ApiModelProperty(value = "配送方式(1.自提  2.快递)", hidden = true)
    private Integer deliveryType;
    @ApiModelProperty("商品规格")
    @Valid
    private List<AddShopFlowerGoodsAttrVO> goodsAttrVOList;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopFlowerGoodsAttrVO.java
New file
@@ -0,0 +1,89 @@
package com.panzhihua.common.model.vos.shop;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品规格信息
 */
@Data
@ApiModel("商品规格信息")
public class ComShopFlowerGoodsAttrVO {
    /**
     * 商品规格id
     */
    @ApiModelProperty("商品规格id")
    private Long id;
    /**
     * 商品id
     */
    @ApiModelProperty("商品id")
    private Long goodsId;
    /**
     * 店铺id
     */
    @ApiModelProperty("店铺id")
    private Long storeId;
    /**
     * 商品名称
     */
    @ApiModelProperty("商品名称")
    private String goodsName;
    /**
     * 商品规格
     */
    @ApiModelProperty("商品规格")
    private String goodsAttrName;
    /**
     * 商品规格库存
     */
    @ApiModelProperty("商品规格库存")
    private Integer stock;
    /**
     * 商品规格销量
     */
    @ApiModelProperty("商品规格销量")
    private Integer sale;
    /**
     * 商品规格图
     */
    @ApiModelProperty("商品规格图")
    private String attrPic;
    /**
     * 是否是默认规格(1.是 2.否)
     */
    @ApiModelProperty("是否是默认规格(1.是  2.否)")
    private Integer isDefault;
    /**
     * 规格价格
     */
    @ApiModelProperty("规格价格")
    private BigDecimal price;
    /**
     * 包邮价
     */
    @ApiModelProperty("包邮价")
    private BigDecimal freeShippingPrice;
    /**
     * 拼单价
     */
    @ApiModelProperty("拼单价")
    private BigDecimal collatePrice;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/ComShopFlowerGoodsVO.java
New file
@@ -0,0 +1,120 @@
package com.panzhihua.common.model.vos.shop;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品信息
 */
@Data
@ApiModel("商品信息")
public class ComShopFlowerGoodsVO {
    /**
     * 商品id
     */
    @ApiModelProperty("商品id")
    private Long id;
    /**
     * 商品名称
     */
    @ApiModelProperty("商品名称")
    private String name;
    /**
     * 店铺id
     */
    @ApiModelProperty("店铺id")
    private Long storeId;
    /**
     * 商品主图
     */
    @ApiModelProperty("商品主图")
    private String goodsPic;
    /**
     * 商品展示图
     */
    @ApiModelProperty("商品展示图")
    private String images;
    /**
     * 商品状态(1.出售中 2.已下架 3.回收站)
     */
    @ApiModelProperty("商品状态(1.出售中  2.已下架  3.回收站)")
    private Integer status;
    /**
     * 商品销量
     */
    @ApiModelProperty("商品销量")
    private Integer sale;
    /**
     * 商品原价
     */
    @ApiModelProperty("商品原价")
    private BigDecimal originalPrice;
    /**
     * 商品现价
     */
    @ApiModelProperty("商品现价")
    private BigDecimal price;
    /**
     * 商品单位
     */
    @ApiModelProperty("商品单位")
    private String unit;
    /**
     * 商品排序
     */
    @ApiModelProperty("商品排序")
    private Integer order;
    /**
     * 商品总库存
     */
    @ApiModelProperty("商品总库存")
    private Integer stock;
    /**
     * 商品详情
     */
    @ApiModelProperty("商品详情")
    private String details;
    /**
     * 配送方式(1.商家配送 2.快递物流)
     */
    @ApiModelProperty("配送方式(1.商家配送  2.快递物流)")
    private Integer deliveryType;
    /**
     * 商品规格列表
     */
    @ApiModelProperty("商品规格列表")
    private List<ComShopGoodsAttrVO> goodsAttrList;
    /**
     * 店铺信息
     */
    @ApiModelProperty("商品店铺信息")
    private PageShopStoreVO shopStoreVO;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("创建时间")
    private Date createAt;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/PageShopFlowerGoodsVO.java
New file
@@ -0,0 +1,84 @@
package com.panzhihua.common.model.vos.shop;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
 * @auther yh
 * @describe * @describe 商品VO
 */
@Data
@ApiModel("商品")
public class PageShopFlowerGoodsVO {
    @ApiModelProperty("商品id")
    private Long id;
    @ApiModelProperty("商品分类id")
    private Long typeId;
    @ApiModelProperty("商品名称")
    private String name;
    @ApiModelProperty("商铺名称")
    private String storeName;
    @ApiModelProperty("店铺id")
    private Long storeId;
    @ApiModelProperty("商品主图")
    private String goodsPic;
    @ApiModelProperty("商品展示图")
    private String images;
    @ApiModelProperty("商品状态(1.上架  2.已下架  3.回收站)")
    private Integer status;
    @ApiModelProperty("商品销量")
    private Integer sale;
    @ApiModelProperty("商品原价")
    private BigDecimal originalPrice;
    @ApiModelProperty("商品现价")
    private BigDecimal price;
    @ApiModelProperty("商品单位")
    private String unit;
    @ApiModelProperty("商品排序")
    private Integer order;
    @ApiModelProperty("商品总库存")
    private Integer stock;
    @ApiModelProperty("商品详情")
    private String details;
    @ApiModelProperty("商品备注")
    private String remark;
    @ApiModelProperty("商品描述")
    private String goodsDescribe;
    @ApiModelProperty("配送方式(1.自提  2.快递)")
    private Integer deliveryType;
    @ApiModelProperty("删除状态(1.未删除  2.已删除)")
    private Integer deleteStatus;
    @ApiModelProperty("创建时间")
    private Date createAt;
    @ApiModelProperty("修改时间")
    private Date updateAt;
    @ApiModelProperty("规格")
    private List<AddShopFlowerGoodsAttrVO> goodsAttrs;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -5,6 +5,7 @@
import com.panzhihua.common.model.dtos.PageBaseDTO;
import com.panzhihua.common.model.dtos.community.*;
import com.panzhihua.common.model.dtos.community.acid.*;
import com.panzhihua.common.model.dtos.community.convenient.*;
import com.panzhihua.common.model.dtos.community.dpc.AddDpcDTO;
import com.panzhihua.common.model.dtos.community.dpc.EditDpcDTO;
import com.panzhihua.common.model.dtos.community.dpc.PageDpcDTO;
@@ -85,22 +86,6 @@
import com.panzhihua.common.model.dtos.community.cluster.admin.EditClusterMemberAdminDto;
import com.panzhihua.common.model.dtos.community.cluster.admin.PageClusterAdminDto;
import com.panzhihua.common.model.dtos.community.cluster.admin.PageClusterMemberAdminDto;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.DeleteConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.ExportMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.OnShelfOrOffShelfProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageClassifyMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PagePopularMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageSearchDTO;
import com.panzhihua.common.model.dtos.community.convenient.ResetPasswordConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.easyPhoto.AddEasyPhotoActivityDTO;
import com.panzhihua.common.model.dtos.community.easyPhoto.AddEasyPhotoClassifyDTO;
import com.panzhihua.common.model.dtos.community.easyPhoto.EditEasyPhotoActivityDTO;
@@ -10495,4 +10480,80 @@
    @PostMapping("/proceedings")
    R addOrUpdateProceedings(@RequestBody ComActProceedingsDTO comActProceedingsDTO);
    /**
     * 自提点分页查询
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    @PostMapping("/convenient/point/page")
    R pagePoint(PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO);
    /**
     * 新增自提点
     * @param convenientElevatingPointDTO
     * @return
     */
    @PostMapping("/convenient/point/add")
    R addPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO);
    /**
     * 编辑自提点
     * @param convenientElevatingPointDTO
     * @return
     */
    @PutMapping("/convenient/point/put")
    R putPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO);
    /**
     * 删除便民服务 自提点
     * @param pointId
     * @param operator
     * @return
     */
    @DeleteMapping("/point/delete")
    R deletePoint(@RequestParam("pointId") Long pointId, @RequestParam("operator") Long operator);
    /**
     * 新增商品分类
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/add")
    R addGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO);
    /**
     * 编辑
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PutMapping("/goodsCategory/put")
    R putGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO);
    /**
     * 删除商品分类
     * @param categoryId
     * @return
     */
    @DeleteMapping("/goodsCategory/delete")
    R deleteGoodsCategory(@RequestParam("categoryId") Long categoryId, @RequestParam("operator") Long operator);
    /**
     * 获取商品分类详情
     * @param categoryId
     * @return
     */
    @GetMapping("/goodsCategory/get")
    R getGoodsCategory(@RequestParam("categoryId") Long categoryId);
    /**
     * 分页查询商品分类
     * @param pageConvenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/page")
     R pageGoodsCategory(@RequestBody PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO);
    @GetMapping("/dataCount")
    R dataCount();
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java
@@ -1323,4 +1323,7 @@
     * */
    @PostMapping("/feedBackReply")
    R updateFeedBack(@RequestBody SysUserFeedbackVO sysUserFeedbackVO);
    @GetMapping("/myFeedBack")
    R myFeedBack(@RequestParam("userId") Long userId,@RequestParam(value = "type",required = false)Integer type);
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComActPorceedingsApi.java
@@ -33,4 +33,6 @@
        return communityService.addOrUpdateProceedings(comActProceedingsDTO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
@@ -2709,4 +2709,13 @@
    public R selectAutomessageSysUserById(@RequestParam("id") Long id){
        return automessageSysUserService.selectAutomessageSysUserById(id);
    }
    /**
     * 获取问题清单,需求清单,报道服务活动数量
     * */
    @GetMapping("/dataCount")
    public R dataCount(){
        return null;
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ConvenientApi.java
@@ -6,10 +6,8 @@
import javax.annotation.Resource;
import javax.validation.Valid;
import com.panzhihua.common.model.dtos.community.convenient.ExportMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageClassifyMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PagePopularMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageSearchDTO;
import com.panzhihua.common.model.dtos.community.convenient.*;
import com.panzhihua.service_community.service.*;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -26,28 +24,9 @@
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtCategoryDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtServeDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.DeleteConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.OnShelfOrOffShelfProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ResetPasswordConvenientMerchantDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComCvtServeExcelVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
import com.panzhihua.service_community.service.ComCvtBusinessService;
import com.panzhihua.service_community.service.ComCvtCategoryService;
import com.panzhihua.service_community.service.ComCvtServeService;
import com.panzhihua.service_community.service.ConvenientMerchantService;
import com.panzhihua.service_community.service.ConvenientProductCategoryService;
import com.panzhihua.service_community.service.ConvenientProductService;
import com.panzhihua.service_community.service.ConvenientServiceCategoryService;
import lombok.extern.slf4j.Slf4j;
@@ -81,6 +60,12 @@
    @Resource
    private ConvenientProductService convenientProductService;
    @Resource
    private ConvenientElevatingPointService convenientElevatingPointService;
    @Resource
    private ConvenientGoodsCategoryService convenientGoodsCategoryService;
    /**
     * 社区后台分页查询便民服务商家
@@ -716,4 +701,96 @@
    public R getProductShelfNum(@RequestParam("merchantId") Long merchantId) {
        return convenientProductService.getProductShelfNum(merchantId);
    }
    /**
     * 分页查询自提点 运营后台
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    @PostMapping("/point/page")
    public R pagePoint(@RequestBody PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO) {
        return convenientElevatingPointService.pagePoint(pageConvenientElevatingPointDTO);
    }
    /**
     * 便民服务新增 自提点
     * @param convenientElevatingPointDTO
     * @return
     */
    @PostMapping("/point/add")
    public R addPoint(@RequestBody ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        return convenientElevatingPointService.addPoint(convenientElevatingPointDTO);
    }
    /**
     * 编辑便民服务 自提点
     * @param convenientElevatingPointDTO
     * @return
     */
    @PutMapping("/point/put")
    public R putPoint(@RequestBody ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        return convenientElevatingPointService.putPoint(convenientElevatingPointDTO);
    }
    /**
     * 删除便民服务 自提点
     * @param pointId
     * @param operator
     * @return
     */
    @DeleteMapping("/point/delete")
    public R deletePoint(@RequestParam("pointId") Long pointId, @RequestParam("operator") Long operator) {
        return convenientElevatingPointService.deletePoint(pointId,operator);
    }
    /**
     * 新增商品分类
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/add")
    public R addGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.addGoodsCategory(convenientGoodsCategoryDTO);
    }
    /**
     * 编辑
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PutMapping("/goodsCategory/put")
    public R putGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.putGoodsCategory(convenientGoodsCategoryDTO);
    }
    /**
     * 删除商品分类
     * @param categoryId
     * @return
     */
    @DeleteMapping("/goodsCategory/delete")
    public R deleteGoodsCategory(@RequestParam("categoryId") Long categoryId, @RequestParam("operator") Long operator) {
        return convenientGoodsCategoryService.deleteGoodsCategoryById(categoryId, operator);
    }
    /**
     * 获取商品分类详情
     * @param categoryId
     * @return
     */
    @GetMapping("/goodsCategory/get")
    public R getGoodsCategory(@RequestParam("categoryId") Long categoryId) {
        return convenientGoodsCategoryService.getGoodsCategoryById(categoryId);
    }
    /**
     * 分页查询商品分类
     * @param pageConvenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/page")
    public R pageGoodsCategory(@RequestBody PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.pageGoodsCategory(pageConvenientGoodsCategoryDTO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopFlowerGoodsAttrDAO.java
New file
@@ -0,0 +1,24 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsAttrVO;
import com.panzhihua.common.model.vos.shop.ComShopGoodsAttrVO;
import com.panzhihua.service_community.model.dos.ComShopFlowerGoodsAttrDO;
import com.panzhihua.service_community.model.dos.ComShopGoodsAttrDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品规格表mapper类
 */
@Mapper
public interface ComShopFlowerGoodsAttrDAO extends BaseMapper<ComShopFlowerGoodsAttrDO> {
    List<ComShopFlowerGoodsAttrVO> getGoodsAttr(@Param("goodsId") Long goodsId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComShopFlowerGoodsDAO.java
New file
@@ -0,0 +1,41 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.shop.*;
import com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsVO;
import com.panzhihua.common.model.vos.shop.ComShopGoodsVO;
import com.panzhihua.common.model.vos.shop.PageShopGoodsVO;
import com.panzhihua.service_community.model.dos.ComShopFlowerGoodsDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品表mapper类
 */
@Mapper
public interface ComShopFlowerGoodsDAO extends BaseMapper<ComShopFlowerGoodsDO> {
    IPage<ComShopFlowerGoodsVO> pageShopGoods(@Param("page") Page page, @Param("pageComShopFlowerGoodsDTO") PageComShopFlowerGoodsDTO pageComShopFlowerGoodsDTO);
    /**
     * 根据店铺id查询商品列表
     *
     * @param page                分页参数
     * @param pageComShopFlowerStoreDTO 请求参数
     * @return 分页商品列表
     */
    IPage<ComShopFlowerGoodsVO> pageShopGoodsByStoreId(@Param("page") Page page, @Param("pageComShopFlowerStoreDTO") PageComShopFlowerStoreDTO pageComShopFlowerStoreDTO);
    /**
     * 分页查询商品列表
     *
     * @param page            分页参数
     * @param comShopFlowerGoodsDTO 请求参数
     * @return 商品列表
     */
    IPage<ComShopFlowerGoodsVO> pageShopGoodByApps(@Param("page") Page page, @Param("comShopFlowerGoodsDTO") ComShopFlowerGoodsDTO comShopFlowerGoodsDTO);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ConvenientElevatingPointDAO.java
New file
@@ -0,0 +1,40 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientElevatingPointDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientMerchantDTO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
import com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
 * @title: ConvenientElevatingPointDAO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 自提点DAO
 * @author: YH
 * @date: 2022-10-21 09:36:09
 */
@Mapper
public interface ConvenientElevatingPointDAO extends BaseMapper<ConvenientElevatingPointDO> {
    /**
     * 分页查询自提点 运营后台
     *
     * @param page                            分页参数
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    IPage<ConvenientElevatingPointVO> page(@Param("page") Page page,
                                           @Param("pageConvenientElevatingPointDTO") PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO);
    /**
     * 删除
     * @param pointId
     * @param operator
     * @return
     */
    int deletePointById(@Param("pointId") Long pointId, @Param("operator") Long operator);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ConvenientGoodsCategoryDAO.java
New file
@@ -0,0 +1,60 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientGoodsCategoryDTO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientGoodsCategoryVO;
import com.panzhihua.service_community.model.dos.ConvenientGoodsCategoryDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * @ClassName: ConvenientGoodsCategoryDAO
 * @Author: yh
 * @Date: 2022/11/8 13:20
 * @Description: 商品分类
 */
@Mapper
public interface ConvenientGoodsCategoryDAO extends BaseMapper<ConvenientGoodsCategoryDO> {
    /**
     * 分页查询便民服务分类
     *
     * @param page                           分页参数
     * @param pageConvenientGoodsCategoryDTO
     * @return 服务分类详情
     */
    IPage<ConvenientGoodsCategoryVO> pageGoodsCategory(@Param("page") Page page, @Param("pageConvenientGoodsCategoryDTO")
            PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO);
    /**
     * 删除商家服务类型关系
     * @param goodsId
     * @return
     */
    int deleteGoodsCategoryRelation(@Param("goodsId") Long goodsId);
    /**
     * 获取商家服务范围
     * @param goodsId
     * @return
     */
    String selectCategoryScopeByGoodsId(@Param("goodsId") Long goodsId);
    /**
     * 获取商家服务类型
     * @param goodsId
     * @return serviceIds
     */
    List<Long> selectCategoryIdsForGoods(@Param("goodsId") Long goodsId);
    /**
     * 查看服务分类是否被引用
     * @param categoryId
     * @return
     */
    int checkCategoryIsUsing(@Param("categoryId") Long categoryId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComShopFlowerGoodsAttrDO.java
New file
@@ -0,0 +1,114 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品规格表实体类
 */
@Data
@TableName("com_shop_flower_goods_attr")
public class ComShopFlowerGoodsAttrDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 商品规格id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 商品id
     */
    private Long goodsId;
    /**
     * 店铺id
     */
    private Long storeId;
    /**
     * 商品名称
     */
    private String goodsName;
    /**
     * 规格名称
     */
    private String goodsAttrName;
    /**
     * 商品规格库存
     */
    private Integer stock;
    /**
     * 商品规格销量
     */
    private Integer sale;
    /**
     * 商品规格图
     */
    private String attrPic;
    /**
     * 是否是默认规格(1.是 2.否)
     */
    private Integer isDefault;
    /**
     * 规格价格
     */
    private BigDecimal price;
    /**
     * 包邮价
     */
    private BigDecimal freeShippingPrice;
    /**
     * 拼单价
     */
    private BigDecimal collatePrice;
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createAt;
    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateAt;
    @Override
    public String toString() {
        return "ComShopFlowerGoodsAttrDO{" +
                "id=" + id +
                ", goodsId=" + goodsId +
                ", storeId=" + storeId +
                ", goodsName='" + goodsName + '\'' +
                ", goodsAttrName='" + goodsAttrName + '\'' +
                ", stock=" + stock +
                ", sale=" + sale +
                ", attrPic='" + attrPic + '\'' +
                ", isDefault=" + isDefault +
                ", price=" + price +
                ", freeShippingPrice=" + freeShippingPrice +
                ", collatePrice=" + collatePrice +
                ", createAt=" + createAt +
                ", updateAt=" + updateAt +
                '}';
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComShopFlowerGoodsDO.java
New file
@@ -0,0 +1,162 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @auther yh
 * @create 2022-10-21 09:36:09
 * @describe 商品表实体类
 */
@Data
@TableName("com_shop_flower_goods")
public class ComShopFlowerGoodsDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 商品id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 商品分类id
     */
    private Long typeId;
    /**
     * 商品名称
     */
    @TableField("`name`")
    private String name;
    /**
     * 店铺id
     */
    private Long storeId;
    /**
     * 商品主图
     */
    private String goodsPic;
    /**
     * 商品展示图
     */
    private String images;
    /**
     * 商品状态(1.出售中 2.已下架 3.回收站)
     */
    @TableField("`status`")
    private Integer status;
    /**
     * 商品销量
     */
    private Integer sale;
    /**
     * 商品原价
     */
    private BigDecimal originalPrice;
    /**
     * 商品现价
     */
    private BigDecimal price;
    /**
     * 商品单位
     */
    private String unit;
    /**
     * 商品排序
     */
    @TableField("`order`")
    private Integer order;
    /**
     * 商品总库存
     */
    private Integer stock;
    /**
     * 商品详情
     */
    private String details;
    /**
     * 商品备注
     */
    private String remark;
    /**
     * 商品描述
     */
    private String goodsDescribe;
    /**
     * 配送方式(1.自提 2.快递)
     */
    private Integer deliveryType;
    /**
     * 删除状态(1.未删除 2.已删除)
     */
    private Integer deleteStatus;
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createAt;
    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateAt;
    @Override
    public String toString() {
        return "ComShopGoodsDO{" + "id=" + id + ", typeId=" + typeId + ", name=" + name + ", storeId=" + storeId
            + ", goodsPic=" + goodsPic + ", images=" + images + ", status=" + status + ", sale=" + sale
            + ", originalPrice=" + originalPrice + ", price=" + price + ", unit=" + unit + ", order=" + order
            + ", stock=" + stock + ", details=" + details + ", remark=" + remark + ", goodsDescribe=" + goodsDescribe
            + ", deliveryType=" + deliveryType + ", deleteStatus=" + deleteStatus + ", createAt=" + createAt
            + ", updateAt=" + updateAt + "}";
    }
    /**
     * 商品状态(1.上架 2.已下架 3.回收站)
     */
    public interface status {
        int sell = 1;
        int lower = 2;
        int recovery = 3;
    }
    /**
     * 删除状态(1.未删除 2.已删除)
     */
    public interface deleteStatus {
        int no = 1;
        int yes = 2;
    }
    /**
     * 配送方式(1.自提 2.快递)
     */
    public interface deliveryType {
        int store = 1;
        int express = 2;
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientElevatingPointDO.java
New file
@@ -0,0 +1,104 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
 * @ClassName: ConvenientElevatingPoint
 * @Author: yh
 * @Date: 2022/11/8 9:27
 * @Description: 自提点
 */
@Data
@TableName(value = "com_convenient_elevating_point")
public class ConvenientElevatingPointDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 自提点名称
     */
    private String name;
    /**
     * 社区id
     */
    private Long communityId;
    /**
     * 社区名称
     */
    private String communityName;
    /**
     * 所属地区
     */
    private String region;
    /**
     * 提货点地址
     */
    private String address;
    /**
     * 联系人
     */
    private String contacts;
    /**
     * 纬度
     */
    private String lat;
    /**
     * 经度
     */
    private String lon;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 微信账号
     */
    private String wechatAccount;
    /**
     * 状态,1:显示,2:隐藏
     */
    private Integer businessStatus;
    /**
     * 累计商品数量
     */
    private Long cumulativeGoodsNum;
    /**
     * 待提货数量
     */
    private Long prepareGoodsNum;
    /**
     * 已提货数量
     */
    private Long alreadyGoodsNum;
    /**
     * 是否删除
     */
    private Boolean isDel;
    /**
     * 创建时间
     */
    private Date createdAt;
    /**
     * 创建人
     */
    private Long createdBy;
    /**
     * 更新时间
     */
    private Date updatedAt;
    /**
     * 更新人
     */
    private Long updatedBy;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientGoodsCategoryDO.java
New file
@@ -0,0 +1,67 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
 * @title: ConvenientGoodsCategoryDO
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 商品分类DO
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Data
@TableName(value = "com_convenient_goods_categories")
public class ConvenientGoodsCategoryDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 分类名称
     */
    private String name;
    /**
     * 分类图标
     */
    private String icon;
    /**
     * 备注
     */
    private String remark;
    /**
     * 权重
     */
    private Integer weight;
    /**
     * 是否删除
     */
    private Boolean isDel;
    /**
     * 创建时间
     */
    private Date createdAt;
    /**
     * 创建人
     */
    private Long createdBy;
    /**
     * 更新时间
     */
    private Date updatedAt;
    /**
     * 更新人
     */
    private Long updatedBy;
    private String areaCode;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ConvenientMerchantDO.java
@@ -7,6 +7,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@@ -121,4 +122,9 @@
    private Long updatedBy;
    private String areaCode;
    /**
     * 服务范围
     */
    private Integer serviceRange;
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ConvenientElevatingPointService.java
New file
@@ -0,0 +1,45 @@
package com.panzhihua.service_community.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientElevatingPointDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientElevatingPointDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO;
/**
 * @ClassName: ConvenientElevatingPointService
 * @Author: yh
 * @Date: 2022/11/8 10:32
 * @Description: 自提点
 */
public interface ConvenientElevatingPointService extends IService<ConvenientElevatingPointDO> {
    /**
     * 分页查询自提点
     *
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    R pagePoint(PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO);
    /**
     * 新增
     * @param convenientElevatingPointDTO
     * @return
     */
    R addPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO);
    /**
     * 修改
     * @param convenientElevatingPointDTO
     * @return
     */
    R putPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO);
    /**
     * 删除
     * @param pointId
     * @param operator
     * @return
     */
    R deletePoint(Long pointId, Long operator);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ConvenientGoodsCategoryService.java
New file
@@ -0,0 +1,70 @@
package com.panzhihua.service_community.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientGoodsCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientGoodsCategoryDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.model.dos.ConvenientGoodsCategoryDO;
/**
 * @title: ConvenientGoodsCategoryService
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 便民服务分类服务类
 * @author: hans
 * @date: 2021/09/16 10:31
 */
public interface ConvenientGoodsCategoryService extends IService<ConvenientGoodsCategoryDO> {
    /**
     * 便民服务新增分类
     *
     * @param convenientGoodsCategoryDTO
     * @return 新增结果
     */
    R addGoodsCategory(ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO);
    /**
     * 便民服务分类编辑
     *
     * @param convenientGoodsCategoryDTO
     * @return 修改结果
     */
    R putGoodsCategory(ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO);
    /**
     * 便民服务分类删除
     *
     * @param categoryId 便民服务分类id
     * @param operator   操作人员
     * @return 删除结果
     */
    R deleteGoodsCategoryById(Long categoryId, Long operator);
    /**
     * 获取便民服务分类详情
     *
     * @param categoryId 便民服务分类id
     * @return 分类详情
     */
    R getGoodsCategoryById(Long categoryId);
    /**
     * 分页查询便民服务分类
     *
     * @param pageConvenientGoodsCategoryDTO
     * @return 分类详情
     */
    R pageGoodsCategory(PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO);
    /**
     * 获取所有便民服务分类
     *
     * @return
     */
    R getAllGoodsCategories(String areaCode);
    /**
     * 获取该社区商家数量大于0的分类
     * @param communityId
     * @return
     */
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientElevatingPointServiceImpl.java
New file
@@ -0,0 +1,114 @@
package com.panzhihua.service_community.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientElevatingPointDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientElevatingPointDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO;
import com.panzhihua.common.utlis.Snowflake;
import com.panzhihua.service_community.dao.ComActDAO;
import com.panzhihua.service_community.dao.ConvenientElevatingPointDAO;
import com.panzhihua.service_community.model.dos.ComActDO;
import com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO;
import com.panzhihua.service_community.model.dos.ConvenientMerchantDO;
import com.panzhihua.service_community.model.dos.ConvenientServiceCategoryDO;
import com.panzhihua.service_community.service.ConvenientElevatingPointService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
import java.util.List;
import static java.util.Objects.isNull;
import static java.util.Objects.nonNull;
import static org.apache.commons.lang3.StringUtils.isNotBlank;
/**
 * @ClassName: ConvenientElevatingPointServiceImpl
 * @Author: yh
 * @Date: 2022/11/8 10:34
 * @Description: 自提点
 */
@Service
@Slf4j
public class ConvenientElevatingPointServiceImpl extends ServiceImpl<ConvenientElevatingPointDAO, ConvenientElevatingPointDO> implements ConvenientElevatingPointService {
    @Resource
    private ComActDAO comActDAO;
    /**
     * 分页查询
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    @Override
    public R pagePoint(PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO) {
        Page page = new Page<>();
        page.setSize(pageConvenientElevatingPointDTO.getPageSize());
        page.setCurrent(pageConvenientElevatingPointDTO.getPageNum());
        IPage<ConvenientElevatingPointVO> iPage = this.baseMapper.page(page, pageConvenientElevatingPointDTO);
        return R.ok(iPage);
    }
    /**
     * 新增
     * @param convenientElevatingPointDTO
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R addPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        ConvenientElevatingPointDO convenientElevatingPointDO = new ConvenientElevatingPointDO();
        BeanUtils.copyProperties(convenientElevatingPointDTO,convenientElevatingPointDO);
        ComActDO comActDO = comActDAO.selectById(convenientElevatingPointDTO.getCommunityId());
        convenientElevatingPointDO.setCommunityName(comActDO.getName());
        this.baseMapper.insert(convenientElevatingPointDO);
        return R.ok();
    }
    /**
     * 修改
     * @param convenientElevatingPointDTO
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R putPoint(ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        Long id = convenientElevatingPointDTO.getId();
        ConvenientElevatingPointDO convenientElevatingPointDO = this.baseMapper.selectById(id);
        if (isNull(convenientElevatingPointDO)) {
            return R.fail("自提点不存在");
        }
        Long communityId = convenientElevatingPointDTO.getCommunityId();
        if (nonNull(communityId)) {
            ComActDO comActDO = comActDAO.selectById(communityId);
            if(comActDO!=null){
                convenientElevatingPointDO.setCommunityName(comActDO.getName());
            } else {
                convenientElevatingPointDO.setCommunityName("西区社区");
            }
        }
        BeanUtils.copyProperties(convenientElevatingPointDTO, convenientElevatingPointDO);
        this.baseMapper.updateById(convenientElevatingPointDO);
        return R.ok();
    }
    @Override
    public R deletePoint(Long pointId, Long operator) {
        ConvenientElevatingPointDO convenientElevatingPointDO = this.baseMapper.selectById(pointId);
        if (convenientElevatingPointDO.getPrepareGoodsNum() > 0){
            return R.fail("该提货点暂时无法删除!若想删除需保证待提货数量为0");
        }
        int result = this.baseMapper.deletePointById(pointId, operator);
        if (result > 0) {
            return R.ok();
        }
        return R.fail("删除失败");
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientGoodsCategoryServiceImpl.java
New file
@@ -0,0 +1,127 @@
package com.panzhihua.service_community.service.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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientGoodsCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientGoodsCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientServiceCategoryDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.convenient.ConvenientGoodsCategoryVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientServiceCategoryVO;
import com.panzhihua.service_community.dao.ConvenientGoodsCategoryDAO;
import com.panzhihua.service_community.dao.ConvenientServiceCategoryDAO;
import com.panzhihua.service_community.model.dos.ConvenientGoodsCategoryDO;
import com.panzhihua.service_community.model.dos.ConvenientServiceCategoryDO;
import com.panzhihua.service_community.service.ConvenientGoodsCategoryService;
import com.panzhihua.service_community.service.ConvenientServiceCategoryService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import static java.util.Objects.isNull;
/**
 * @title: ConvenientGoodsCategoryServiceImpl
 * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
 * @description: 商品分类服务实现类
 * @author: yh
 * @date: 2022-10-21 09:36:09
 */
@Service
public class ConvenientGoodsCategoryServiceImpl extends ServiceImpl<ConvenientGoodsCategoryDAO, ConvenientGoodsCategoryDO>
        implements ConvenientGoodsCategoryService {
    @Override
    public R addGoodsCategory(ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        ConvenientGoodsCategoryDO convenientGoodsCategoryDO = new ConvenientGoodsCategoryDO();
        BeanUtils.copyProperties(convenientGoodsCategoryDTO, convenientGoodsCategoryDO);
        convenientGoodsCategoryDO.setCreatedAt(new Date());
        int result = this.baseMapper.insert(convenientGoodsCategoryDO);
        if (result > 0) {
            return R.ok();
        }
        return R.fail("添加失败");
    }
    @Override
    public R putGoodsCategory(ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        ConvenientGoodsCategoryDO convenientGoodsCategoryDO = this.baseMapper.selectById(convenientGoodsCategoryDTO.getId());
        if (isNull(convenientGoodsCategoryDO)) {
            return R.fail("分类id不存在");
        }
        BeanUtils.copyProperties(convenientGoodsCategoryDTO, convenientGoodsCategoryDO);
        int result = this.baseMapper.updateById(convenientGoodsCategoryDO);
        if (result > 0) {
            return R.ok();
        }
        return R.fail("更新失败");
    }
    @Override
    public R deleteGoodsCategoryById(Long categoryId, Long operator) {
        if (isNull(categoryId)) {
            return R.fail("分类id不能为空");
        }
        ConvenientGoodsCategoryDO convenientGoodsCategoryDO = this.baseMapper.selectById(categoryId);
        if (isNull(convenientGoodsCategoryDO)) {
            return R.fail("分类id不存在");
        }
        int count = this.baseMapper.checkCategoryIsUsing(categoryId);
        if (count > 0) {
            return R.fail("该分类名称已被引用,无法删除!");
        }
        convenientGoodsCategoryDO.setIsDel(true);
        convenientGoodsCategoryDO.setUpdatedBy(operator);
        int result = this.baseMapper.updateById(convenientGoodsCategoryDO);
        if (result > 0) {
            return R.ok();
        }
        return R.fail("删除失败");
    }
    @Override
    public R getGoodsCategoryById(Long goodsId) {
        if (isNull(goodsId)) {
            return R.fail("分类id不能为空");
        }
        ConvenientGoodsCategoryDO convenientGoodsCategoryDO = this.baseMapper.selectById(goodsId);
        if (isNull(convenientGoodsCategoryDO)) {
            return R.fail("分类id不存在");
        }
        ConvenientGoodsCategoryVO convenientGoodsCategoryVO = new ConvenientGoodsCategoryVO();
        BeanUtils.copyProperties(convenientGoodsCategoryDO, convenientGoodsCategoryVO);
        return R.ok(convenientGoodsCategoryVO);
    }
    @Override
    public R pageGoodsCategory(PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO) {
        Page page = new Page<>();
        page.setSize(pageConvenientGoodsCategoryDTO.getPageSize());
        page.setCurrent(pageConvenientGoodsCategoryDTO.getPageNum());
        IPage<ConvenientGoodsCategoryVO> iPage = this.baseMapper.pageGoodsCategory(page, pageConvenientGoodsCategoryDTO);
        return R.ok(iPage);
    }
    @Override
    public R getAllGoodsCategories(String areaCode) {
        List<ConvenientGoodsCategoryVO> categoryVOList = new ArrayList<>();
        List<ConvenientGoodsCategoryDO> categoryDOS = this.baseMapper.selectList(new QueryWrapper<ConvenientGoodsCategoryDO>()
                .lambda().eq(ConvenientGoodsCategoryDO::getAreaCode,areaCode).orderByDesc(ConvenientGoodsCategoryDO::getWeight));
        if (!ObjectUtils.isEmpty(categoryDOS)) {
            categoryDOS.forEach(categoryDO -> {
                ConvenientGoodsCategoryVO categoryVO = new ConvenientGoodsCategoryVO();
                BeanUtils.copyProperties(categoryDO, categoryVO);
                categoryVOList.add(categoryVO);
            });
        }
        return R.ok(categoryVOList);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComConvenientElevatingPointMapper.xml
New file
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_community.dao.ConvenientElevatingPointDAO">
    <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO">
        <!--@Table com_convenient_elevating_point-->
        <id column="id" jdbcType="BIGINT" property="id"/>
        <result column="name" jdbcType="VARCHAR" property="name"/>
        <result column="community_id" jdbcType="BIGINT" property="communityId"/>
        <result column="community_name" jdbcType="VARCHAR" property="communityName"/>
        <result column="region" jdbcType="VARCHAR" property="region"/>
        <result column="address" jdbcType="VARCHAR" property="address"/>
        <result column="contacts" jdbcType="VARCHAR" property="contacts"/>
        <result column="phone" jdbcType="VARCHAR" property="phone"/>
        <result column="wechat_account" jdbcType="VARCHAR" property="wechatAccount"/>
        <result column="lat" jdbcType="VARCHAR" property="lat"/>
        <result column="lon" jdbcType="VARCHAR" property="lon"/>
        <result column="business_status" property="businessStatus"/>
        <result column="cumulative_goods_num" jdbcType="BIGINT" property="cumulativeGoodsNum"/>
        <result column="prepare_goods_num" jdbcType="BIGINT" property="prepareGoodsNum"/>
        <result column="already_goods_num" jdbcType="BIGINT" property="alreadyGoodsNum"/>
        <result column="is_del" jdbcType="BIT" property="isDel"/>
        <result column="created_at" jdbcType="TIMESTAMP" property="createdAt"/>
        <result column="created_by" jdbcType="BIGINT" property="createdBy"/>
        <result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt"/>
        <result column="updated_by" jdbcType="BIGINT" property="updatedBy"/>
    </resultMap>
    <sql id="Base_Column_List">
        id, `name`, community_id, community_name, region, address, contacts, phone, wechat_account,
        lat, lon, `business_status`, cumulative_goods_num, prepare_goods_num, already_goods_num, is_del,
        created_at, created_by, updated_at, updated_by
    </sql>
    <select id="page" resultType="com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO">
        SELECT cce.* FROM com_convenient_elevating_point cce WHERE cce.is_del = 0
        <if test="pageConvenientElevatingPointDTO.businessStatus != null and pageConvenientElevatingPointDTO.businessStatus != ''">
            AND cce.business_status = #{pageConvenientElevatingPointDTO.businessStatus}
        </if>
        <if test="pageConvenientElevatingPointDTO.communityId != null and pageConvenientElevatingPointDTO.communityId != 0">
            AND ccm.community_id = ${pageConvenientElevatingPointDTO.communityId}
        </if>
        <if test="pageConvenientElevatingPointDTO.keyword != null and pageConvenientElevatingPointDTO.keyword != &quot;&quot;">
            AND (
            cce.name LIKE CONCAT('%', #{pageConvenientElevatingPointDTO.keyword}, '%')
            OR cce.address LIKE CONCAT('%', #{pageConvenientElevatingPointDTO.keyword}, '%')
            OR cce.contacts LIKE CONCAT('%', #{pageConvenientElevatingPointDTO.keyword}, '%')
            )
        </if>
        ORDER BY cce.prepare_goods_num DESC
    </select>
    <update id="deletePointById">
        UPDATE com_convenient_elevating_point SET is_del = 1, updated_by = #{operator} WHERE id = #{pointId}
    </update>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComShopFlowerGoodsAttrMapper.xml
New file
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_community.dao.ComShopFlowerGoodsAttrDAO">
  <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ComShopFlowerGoodsAttrDO">
    <!--@mbg.generated-->
    <!--@Table com_shop_flower_goods_attr-->
    <id column="id" jdbcType="BIGINT" property="id"/>
    <result column="goods_id" jdbcType="BIGINT" property="goodsId"/>
    <result column="store_id" jdbcType="BIGINT" property="storeId"/>
    <result column="goods_name" jdbcType="VARCHAR" property="goodsName"/>
    <result column="goods_attr_name" jdbcType="VARCHAR" property="goodsAttrName"/>
    <result column="stock" jdbcType="INTEGER" property="stock"/>
    <result column="sale" jdbcType="INTEGER" property="sale"/>
    <result column="attr_pic" jdbcType="VARCHAR" property="attrPic"/>
    <result column="is_default" jdbcType="TINYINT" property="isDefault"/>
    <result column="price" jdbcType="DECIMAL" property="price"/>
    <result column="free_shipping_price" jdbcType="DECIMAL" property="freeShippingPrice"/>
    <result column="collate_price" jdbcType="DECIMAL" property="collatePrice"/>
    <result column="create_at" jdbcType="TIMESTAMP" property="createAt"/>
    <result column="update_at" jdbcType="TIMESTAMP" property="updateAt"/>
  </resultMap>
  <sql id="Base_Column_List">
    <!--@mbg.generated-->
    id, goods_id, store_id, goods_name, goods_attr_name, stock, sale, attr_pic, is_default,
    price, free_shipping_price, collate_price, create_at, update_at
  </sql>
  <select id="getGoodsAttr" resultType="com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsAttrVO">
    select  <include refid="Base_Column_List"/> from com_shop_flower_goods_attr where goods_id = #{goodsId}
  </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComShopFlowerGoodsMapper.xml
New file
@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_community.dao.ComShopFlowerGoodsDAO">
    <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ComShopFlowerGoodsDO">
        <!--@mbg.generated-->
        <!--@Table com_shop_flower_goods-->
        <id column="id" jdbcType="BIGINT" property="id"/>
        <result column="type_id" jdbcType="BIGINT" property="typeId"/>
        <result column="name" jdbcType="VARCHAR" property="name"/>
        <result column="store_id" jdbcType="BIGINT" property="storeId"/>
        <result column="goods_pic" jdbcType="VARCHAR" property="goodsPic"/>
        <result column="images" jdbcType="VARCHAR" property="images"/>
        <result column="status" jdbcType="TINYINT" property="status"/>
        <result column="sale" jdbcType="INTEGER" property="sale"/>
        <result column="original_price" jdbcType="DECIMAL" property="originalPrice"/>
        <result column="price" jdbcType="DECIMAL" property="price"/>
        <result column="unit" jdbcType="VARCHAR" property="unit"/>
        <result column="order" jdbcType="INTEGER" property="order"/>
        <result column="stock" jdbcType="INTEGER" property="stock"/>
        <result column="details" jdbcType="LONGVARCHAR" property="details"/>
        <result column="remark" jdbcType="VARCHAR" property="remark"/>
        <result column="goods_describe" jdbcType="VARCHAR" property="goodsDescribe"/>
        <result column="delivery_type" jdbcType="TINYINT" property="deliveryType"/>
        <result column="delete_status" jdbcType="TINYINT" property="deleteStatus"/>
        <result column="create_at" jdbcType="TIMESTAMP" property="createAt"/>
        <result column="update_at" jdbcType="TIMESTAMP" property="updateAt"/>
    </resultMap>
    <sql id="Base_Column_List">
        <!--@mbg.generated-->
        id, type_id, `name`, store_id, goods_pic, images, `status`, sale, original_price,
        price, unit, `order`, stock, details, remark, goods_describe, delivery_type, delete_status,
        create_at, update_at
    </sql>
    <select id="pageShopGoods" resultType="com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsVO">
        select c.id,c.type_id,ccm.name as
        storeName,c.name,c.store_id,c.goods_pic,c.images,c.status,c.sale,c.original_price,c.price,c.unit,c.order,c.stock,c.details,c.remark,c.goods_describe,c.delivery_type,c.delete_status,c.create_at,c.update_at
        from com_shop_flower_goods c
        left join com_convenient_merchants ccm on c.store_id=ccm.id
        <where>and
            <if test='pageComShopFlowerGoodsDTO.storeName != null and pageComShopFlowerGoodsDTO.storeName.trim() != &quot;&quot;'>
                c.delete_status = 1 and ccm.id_del = 0
                and ccm.name like concat('%',#{pageComShopFlowerGoodsDTO.storeName},'%')
            </if>
            <if test='pageComShopFlowerGoodsDTO.name != null and pageComShopFlowerGoodsDTO.name.trim() != &quot;&quot;'>and c.name
                like concat('%',#{pageComShopFlowerGoodsDTO.name},'%')
            </if>
            <if test='pageComShopFlowerGoodsDTO.storeId != null'>and ccm.id=#{pageComShopFlowerGoodsDTO.storeId}
            </if>
            <if test='pageComShopFlowerGoodsDTO.status != null'>and c.status like
                concat('%',#{pageComShopFlowerGoodsDTO.status},'%')
            </if>
        </where>
        order by c.create_at desc
    </select>
    <select id="pageShopGoodsByStoreId" resultType="com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsVO">
        select id,`name`,store_id,goods_pic,images,`status`,sale,original_price,price
        ,unit,`order`,stock,details,delivery_type from com_shop_flower_goods where store_id =
        #{pageComShopFlowerStoreDTO.storeId}
        and delete_status = 1 and status = 1 order by sale desc,create_at desc
    </select>
    <select id="pageShopGoodByApps" resultType="com.panzhihua.common.model.vos.shop.ComShopFlowerGoodsVO">
        select csg.id,csg.`name`,csg.store_id,csg.goods_pic,csg.images,csg.`status`,csg.sale,csg.original_price
        ,csg.price,csg.unit,csg.`order`,csg.stock,csg.details,csg.delivery_type, csg.create_at from com_shop_flower_goods as
        csg left join com_convenient_merchants as css on css.id = csg.store_id where 1=1 and csg.delete_status = 1 and
        css.`business_status` = 0
        <if test='comShopFlowerGoodsDTO.name != null and comShopFlowerGoodsDTO.name !=&quot;&quot;'>
            AND csg.`name` like concat('%',#{comShopFlowerGoodsDTO.name},'%')
        </if>
        <if test='comShopFlowerGoodsDTO.status != null '>AND csg.`status` = #{comShopFlowerGoodsDTO.status}</if>
        <if test='comShopFlowerGoodsDTO.storeId != null '>AND csg.store_id = #{comShopFlowerGoodsDTO.storeId}</if>
        <if test='comShopFlowerGoodsDTO.status != null '>AND csg.status = #{comShopFlowerGoodsDTO.status}</if>
        <if test='comShopFlowerGoodsDTO.deliveryType != null '>AND csg.delivery_type = #{comShopFlowerGoodsDTO.deliveryType}</if>
        order by sale desc,create_at desc
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientGoodsCategoryMapper.xml
New file
@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_community.dao.ConvenientGoodsCategoryDAO">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ConvenientGoodsCategoryDO">
        <id column="id" property="id"/>
        <id column="name" property="name"/>
        <id column="icon" property="icon"/>
        <id column="remark" property="remark"/>
        <id column="weight" property="weight"/>
        <id column="is_del" property="isDel"/>
        <id column="created_at" property="createdAt"/>
        <id column="created_by" property="createdBy"/>
        <id column="updated_at" property="updatedAt"/>
        <id column="updated_by" property="updatedBy"/>
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
    id,`name`,icon,remark,weight,is_del,created_at,created_by,updated_at,updated_by
    </sql>
    <select id="pageGoodsCategory"
            resultType="com.panzhihua.common.model.vos.community.convenient.ConvenientGoodsCategoryVO">
        SELECT
        <include refid="Base_Column_List"/>
        FROM com_convenient_service_categories
        WHERE is_del = 0
        <if test="pageConvenientGoodsCategoryDTO.name != null and pageConvenientGoodsCategoryDTO.name.trim() != &quot;&quot;">
            AND `name` LIKE concat('%', #{pageConvenientGoodsCategoryDTO.name}, '%' )
        </if>
        <if test="pageConvenientGoodsCategoryDTO.areaCode != null and pageConvenientGoodsCategoryDTO.areaCode.trim() != &quot;&quot;">
            AND area_code = #{pageConvenientGoodsCategoryDTO.areaCode}
        </if>
        ORDER BY weight DESC
    </select>
    <delete id="deleteGoodsCategoryRelation">
        DELETE FROM com_convenient_goods_scope WHERE goods_id = #{goodsId}
    </delete>
    <select id="selectCategoryScopeByGoodsId" resultType="java.lang.String">
        SELECT GROUP_CONCAT(`goods_category_name`) serviceScope FROM com_convenient_goods_scope WHERE goods_id = #{goodsId}
    </select>
    <select id="selectCategoryIdsForGoods" resultType="java.lang.Long">
        SELECT goods_category_id FROM com_convenient_goods_scope WHERE goods_id = #{goodsId}
    </select>
    <select id="checkCategoryIsUsing" resultType="java.lang.Integer">
        SELECT COUNT(1) FROM com_convenient_goods_scope WHERE goods_category_id = #{categoryId}
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientMerchantMapper.xml
@@ -28,12 +28,14 @@
                <id column="created_by" property="createdBy" />
                <id column="updated_at" property="updatedAt" />
                <id column="updated_by" property="updatedBy" />
                <id column="area_code" property="areaCode" />
                <id column="service_range" property="serviceRange" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id,`name`,community_id,community_name,logo,contacts,id_card,phone,address,lat,lon,begin_at,end_at,period,introduction,
        business_status,user_id,consultation_volume,is_del,created_at,created_by,updated_at,updated_by
        business_status,user_id,consultation_volume,is_del,created_at,created_by,updated_at,updated_by,area_code,service_range
    </sql>
    <select id="pageMerchant" resultType="com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO">
        SELECT ccm.*, su.account, su.status AS accountStatus, GROUP_CONCAT(ccss.service_name) AS serviceScope
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java
@@ -1504,8 +1504,12 @@
    @PostMapping("/feedBackReply")
    public R feedBackReply(@RequestBody SysUserFeedbackVO sysUserFeedbackVO){
        return null;
        return userService.feedBackReply(sysUserFeedbackVO);
    }
    @GetMapping("/myFeedBack")
    public R myFeedBack(@RequestParam("userId")Long id,@RequestParam(value = "type",required = false)Integer type){
        return userService.myFeedBack(id,type);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserFeedbackDO.java
@@ -64,4 +64,9 @@
     * 状态
     */
    private Integer status;
    /**
     * 问题留言或投诉建议
     * */
    private Integer type;
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java
@@ -953,4 +953,14 @@
     * 移除专家权限
     * */
    R removeExpertRole(String phone);
    /**
     * 回复用户反馈
     * */
    R feedBackReply(SysUserFeedbackVO sysUserFeedbackVO);
    /**
     * 查看我的问题留言或者问题留言记录
     * */
    R myFeedBack(Long id,Integer type);
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -3928,6 +3928,19 @@
        return R.ok();
    }
    @Override
    public R feedBackReply(SysUserFeedbackVO sysUserFeedbackVO) {
        SysUserFeedbackDO sysUserFeedbackDO=new SysUserFeedbackDO();
        BeanUtils.copyProperties(sysUserFeedbackVO, sysUserFeedbackDO);
        return R.ok(sysUserFeedbackDAO.updateById(sysUserFeedbackDO));
    }
    @Override
    public R myFeedBack(Long id,Integer type) {
        List<SysUserFeedbackDO> sysUserFeedbackDOS = sysUserFeedbackDAO.selectList(new QueryWrapper<SysUserFeedbackDO>().lambda().eq(SysUserFeedbackDO::getType, type).eq(SysUserFeedbackDO::getUserId, id));
        return R.ok(sysUserFeedbackDOS);
    }
    @Override
    public R getAreaAndStreet() {