Bladeren bron

模块开发12

wwh 1 maand geleden
bovenliggende
commit
6bdd07fd96

+ 3 - 1
huimv-farm/src/main/java/vip/xiaonuo/core/config/GlobalConfigure.java

@@ -149,7 +149,9 @@ public class GlobalConfigure implements WebMvcConfigurer {
             "/sys/userCenter/findPasswordByPhone",
             "/sys/userCenter/findPasswordByEmail",
             "/importData",
-            "/importMoney"
+            "/importMoney",
+            "/importOverdue",
+            "/importBalance"
     };
 
     /**

+ 18 - 0
huimv-farm/src/main/java/vip/xiaonuo/importData/controller/ImportHrController.java

@@ -79,4 +79,22 @@ public class ImportHrController {
                                           @RequestParam(name = "file") MultipartFile files) {
         return importData.importMoney(httpServletRequest, orgId, files);
     }
+
+    @ApiOperationSupport(order = 3)
+    @ApiOperation("逾期明细导入")
+    @PostMapping("/importOverdue")
+    @Transactional
+    public CommonResult importOverdue(HttpServletRequest httpServletRequest,@RequestParam(name = "orgId") String orgId,
+                                    @RequestParam(name = "file") MultipartFile files) {
+        return importData.importOverdue(httpServletRequest, orgId, files);
+    }
+
+    @ApiOperationSupport(order = 4)
+    @ApiOperation("资金余额导入")
+    @PostMapping("/importBalance")
+    @Transactional
+    public CommonResult importBalance(HttpServletRequest httpServletRequest,@RequestParam(name = "orgId") String orgId,
+                                    @RequestParam(name = "file") MultipartFile files) {
+        return importData.importBalance(httpServletRequest, orgId, files);
+    }
 }

+ 6 - 0
huimv-farm/src/main/java/vip/xiaonuo/importData/service/ImportData.java

@@ -14,4 +14,10 @@ public interface ImportData {
 
     CommonResult importMoney(HttpServletRequest httpServletRequest, @RequestParam(name = "orgId") String orgId,
                             @RequestParam(name = "file") MultipartFile files);
+
+    CommonResult importOverdue(HttpServletRequest httpServletRequest, @RequestParam(name = "orgId") String orgId,
+                             @RequestParam(name = "file") MultipartFile files);
+
+    CommonResult importBalance(HttpServletRequest httpServletRequest, @RequestParam(name = "orgId") String orgId,
+                               @RequestParam(name = "file") MultipartFile files);
 }

+ 102 - 0
huimv-farm/src/main/java/vip/xiaonuo/importData/service/impl/ImportDataImpl.java

@@ -1,6 +1,7 @@
 package vip.xiaonuo.importData.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.druid.sql.visitor.functions.If;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -16,12 +17,19 @@ import vip.xiaonuo.hr.modular.basedepartment.entity.HrBaseDepartment;
 import vip.xiaonuo.hr.modular.basedepartment.service.HrBaseDepartmentService;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.HrBaseEmployeeInfo;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.service.HrBaseEmployeeInfoService;
+import vip.xiaonuo.importData.entity.BalanceData;
 import vip.xiaonuo.importData.entity.HrData;
 import vip.xiaonuo.importData.entity.MoneyData;
+import vip.xiaonuo.importData.entity.OverdueData;
 import vip.xiaonuo.importData.service.ImportData;
 import vip.xiaonuo.importData.utils.ExcelImportSheet;
+import vip.xiaonuo.money.entity.MoneyBusiness;
 import vip.xiaonuo.money.entity.MoneyCost;
+import vip.xiaonuo.money.entity.MoneyWriteOverdue;
+import vip.xiaonuo.money.entity.vo.MoneyVo;
+import vip.xiaonuo.money.mapper.MoneyBusinessMapper;
 import vip.xiaonuo.money.mapper.MoneyCostMapper;
+import vip.xiaonuo.money.mapper.MoneyWriteOverdueMapper;
 import vip.xiaonuo.sys.modular.org.entity.SysOrg;
 import vip.xiaonuo.sys.modular.org.mapper.SysOrgMapper;
 
@@ -44,6 +52,10 @@ public class ImportDataImpl implements ImportData {
     private MoneyCostMapper moneyCostMapper;
     @Autowired
     private SysOrgMapper orgMapper;
+    @Autowired
+    private MoneyWriteOverdueMapper overdueMapper;
+    @Autowired
+    private MoneyBusinessMapper businessMapper;
 
     @Override
     @Transactional
@@ -243,4 +255,94 @@ public class ImportDataImpl implements ImportData {
         }
         return CommonResult.ok();
     }
+
+    @Override
+    public CommonResult importOverdue(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
+        Map<String , String> map = new HashMap<>();
+        //表头与键值对的映射关系
+        map.put("单据编号" , "documentNumber");
+        map.put("单据类型" , "documentType");
+        map.put("单据状态" , "documentStatus");
+        map.put("客户" , "userName");
+        map.put("创建时间" , "createTime");
+        map.put("到期日" , "endTime");
+        map.put("逾期金额" , "money");
+
+
+//        SysOrg org = orgMapper.selectOne(new QueryWrapper<SysOrg>().eq("id", orgId));
+        try(
+                //这里面的对象会自动关闭
+                InputStream in = files.getInputStream();
+                Workbook workbook = ExcelImportSheet.getTypeFromExtends(in , files.getOriginalFilename())
+        ) {
+
+            //根据名称获取单张表对象 也可以使用getSheetAt(int index)获取单张表的对象 获取第一张表
+            Sheet sheet = workbook.getSheetAt(0);
+            List<OverdueData> list = ExcelImportSheet.getListFromExcel(sheet , OverdueData.class , map);
+            for (OverdueData overdueData : list) {
+                if (null == overdueData.getCreateTime()) {
+                } else {
+                    MoneyWriteOverdue overdue = new MoneyWriteOverdue();
+                    overdue.setOrgId(orgId);
+                    overdue.setCreateTime(overdueData.getCreateTime());
+                    overdue.setDocumentNumber(overdueData.getDocumentNumber());
+                    overdue.setDocumentType(overdueData.getDocumentType());
+                    overdue.setDocumentStatus(overdueData.getDocumentStatus());
+                    overdue.setEndTime(overdueData.getEndTime());
+                    overdue.setMoney(overdueData.getMoney());
+                    overdue.setUserName(overdueData.getUserName());
+                    overdueMapper.insert(overdue);
+                }
+
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            return CommonResult.error();
+        }finally {
+            //写着好看的
+        }
+        return CommonResult.ok();
+    }
+
+    @Override
+    public CommonResult importBalance(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
+        Map<String , String> map = new HashMap<>();
+        //表头与键值对的映射关系
+//        map.put("填报公司" , "orgName");
+        map.put("资金余额" , "balance");
+        map.put("创建时间" , "createTime");
+
+
+
+        SysOrg org = orgMapper.selectOne(new QueryWrapper<SysOrg>().eq("id", orgId));
+        try(
+                //这里面的对象会自动关闭
+                InputStream in = files.getInputStream();
+                Workbook workbook = ExcelImportSheet.getTypeFromExtends(in , files.getOriginalFilename())
+        ) {
+
+            //根据名称获取单张表对象 也可以使用getSheetAt(int index)获取单张表的对象 获取第一张表
+            Sheet sheet = workbook.getSheetAt(0);
+            List<BalanceData> list = ExcelImportSheet.getListFromExcel(sheet , BalanceData.class , map);
+            for (BalanceData balanceData : list) {
+                if (null == balanceData.getCreateTime()) {
+                } else {
+                    MoneyBusiness moneyBusiness = new MoneyBusiness();
+                    moneyBusiness.setOrgId(orgId);
+                    moneyBusiness.setBalance(balanceData.getBalance());
+                    moneyBusiness.setCreateTime(balanceData.getCreateTime());
+                    businessMapper.insert(moneyBusiness);
+                }
+
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            return CommonResult.error();
+        }finally {
+            //写着好看的
+        }
+        return CommonResult.ok();
+    }
 }

+ 2 - 2
huimv-farm/src/main/java/vip/xiaonuo/money/controller/MoneyBusinessController.java

@@ -178,7 +178,7 @@ public class MoneyBusinessController {
         MoneyBusiness moneyBusiness = new MoneyBusiness();
         moneyBusiness.setOrgId(MoneyVo.getOrgId());
         moneyBusiness.setBalance(MoneyVo.getBalance());
-        moneyBusiness.setCreateTime(DateUtil.parse(MoneyVo.getCreateTime(),"yyyy-MM"));
+        moneyBusiness.setCreateTime(DateUtil.parse(MoneyVo.getCreateTime(),"yyyy-MM-dd"));
         businessService.save(moneyBusiness);
         return CommonResult.ok();
     }
@@ -205,7 +205,7 @@ public class MoneyBusinessController {
         MoneyBusiness moneyBusiness = new MoneyBusiness();
         moneyBusiness.setBalance(moneyBusinessParam.getBalance());
         moneyBusiness.setId(moneyBusinessParam.getId());
-        moneyBusiness.setCreateTime(DateUtil.parse(moneyBusinessParam.getCreateTime(),"yyyy-MM"));
+        moneyBusiness.setCreateTime(DateUtil.parse(moneyBusinessParam.getCreateTime(),"yyyy-MM-dd"));
         businessService.updateById(moneyBusiness);
         return CommonResult.ok();
     }

+ 33 - 4
huimv-farm/src/main/java/vip/xiaonuo/money/controller/MoneyProduceController.java

@@ -19,10 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.money.entity.MoneyProduce;
 import vip.xiaonuo.money.entity.vo.MoneyProduceScreenVo;
-import vip.xiaonuo.money.param.MoneyAnalysisParam;
-import vip.xiaonuo.money.param.MoneyInOutParam;
-import vip.xiaonuo.money.param.MoneyProduceIncomeParam;
-import vip.xiaonuo.money.param.MoneyProduceParam;
+import vip.xiaonuo.money.param.*;
 import vip.xiaonuo.money.service.IMoneyProduceService;
 
 import java.util.List;
@@ -79,4 +76,36 @@ public class MoneyProduceController {
     public CommonResult<List<MoneyProduceScreenVo>> getList(@RequestBody MoneyInOutParam inOutParam) {
         return CommonResult.data(produceService.getList(inOutParam));
     }
+
+
+
+    @ApiOperationSupport(order = 6)
+    @ApiOperation("剔除的关联交易填报")
+    @PostMapping("/money-produce/add")
+    public CommonResult add(@RequestBody MoneyProduceAddParam addParam) {
+        return produceService.add(addParam);
+    }
+
+
+    @ApiOperationSupport(order = 7)
+    @ApiOperation("剔除的关联交易修改")
+    @PostMapping("/money-produce/edit")
+    public CommonResult edit(@RequestBody MoneyProduceEditParam editParam) {
+        return produceService.edit(editParam);
+    }
+
+
+    @ApiOperationSupport(order = 8)
+    @ApiOperation("剔除的关联交易删除")
+    @PostMapping("/money-produce/delete")
+    public CommonResult delete(@RequestBody Map<String,String> paramsMap) {
+        return produceService.delete(paramsMap);
+    }
+
+    @ApiOperationSupport(order = 9)
+    @ApiOperation("剔除的关联交易分页")
+    @PostMapping("/money-produce/page")
+    public CommonResult page(@RequestBody MoneyInOutPageParam inOutPageParam) {
+        return CommonResult.data(produceService.page(inOutPageParam));
+    }
 }

+ 0 - 1
huimv-farm/src/main/java/vip/xiaonuo/money/entity/MoneyBusiness.java

@@ -73,7 +73,6 @@ public class MoneyBusiness implements Serializable {
      * 创建时间
      */
     @ApiModelProperty(value = "创建时间", position = 7)
-    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date createTime;
 
 

+ 16 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/entity/MoneyProduce0422.java

@@ -7,6 +7,7 @@ import java.time.LocalDateTime;
 import java.io.Serializable;
 import java.util.Date;
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -30,6 +31,7 @@ public class MoneyProduce0422 implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Integer id;
 
+    @ApiModelProperty(value = "物料名称", position = 7)
     private String materialName;
 
     /**
@@ -40,11 +42,13 @@ public class MoneyProduce0422 implements Serializable {
     /**
      * 创建时间
      */
+    @ApiModelProperty(value = "创建时间", position = 1)
     private Date createTime;
 
     /**
      * 金额
      */
+    @ApiModelProperty(value = "金额", position = 2)
     private String materialAmount;
 
     /**
@@ -57,6 +61,7 @@ public class MoneyProduce0422 implements Serializable {
      */
     private Integer materialId;
 
+    @ApiModelProperty(value = "id",position = 3)
     private String orgId;
 
     /**
@@ -64,5 +69,16 @@ public class MoneyProduce0422 implements Serializable {
      */
     private String freceiverid;
 
+    @ApiModelProperty(value = "填报的金额", position = 5)
+    private String writeMoney;
+
+    @ApiModelProperty(value = "0为真实数据 1为填报数据", position = 6)
+    private Integer isWrite;
+
+    @ApiModelProperty(value = "公司名称", position = 8)
+    private String orgName;
+
+    @ApiModelProperty(value = "交易关联方", position = 8)
+    private String customerName;
 
 }

+ 0 - 1
huimv-farm/src/main/java/vip/xiaonuo/money/entity/vo/MoneyVo.java

@@ -33,7 +33,6 @@ public class MoneyVo implements Serializable {
     private String balance;
 
     @ApiModelProperty(value = "创建时间", position = 7)
-    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private String  createTime;
 
 

+ 15 - 4
huimv-farm/src/main/java/vip/xiaonuo/money/service/IMoneyProduceService.java

@@ -2,13 +2,13 @@ package vip.xiaonuo.money.service;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.money.entity.MoneyProduce;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.money.entity.MoneyProduce0422;
 import vip.xiaonuo.money.entity.vo.MoneyProduceScreenVo;
-import vip.xiaonuo.money.param.MoneyAnalysisParam;
-import vip.xiaonuo.money.param.MoneyInOutParam;
-import vip.xiaonuo.money.param.MoneyProduceIncomeParam;
-import vip.xiaonuo.money.param.MoneyProduceParam;
+import vip.xiaonuo.money.param.*;
 
 import java.util.List;
 import java.util.Map;
@@ -38,4 +38,15 @@ public interface IMoneyProduceService extends IService<MoneyProduce> {
 
     //大屏各部门销售收入趋势分析
     List<MoneyProduceScreenVo> getList(MoneyInOutParam inOutParam);
+
+    //剔除的关联交易填报
+    CommonResult add(MoneyProduceAddParam addParam);
+
+    //剔除的关联交易修改
+    CommonResult edit(MoneyProduceEditParam editParam);
+
+    CommonResult delete(Map<String,String> paramsMap);
+
+    Page<MoneyProduce0422> page(MoneyInOutPageParam inOutPageParam);
+
 }

+ 89 - 4
huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyProduceServiceImpl.java

@@ -6,8 +6,10 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.money.entity.MoneyProduce;
 import vip.xiaonuo.money.entity.MoneyProduce0422;
 import vip.xiaonuo.money.entity.MoneyProduceIncome;
@@ -15,10 +17,7 @@ import vip.xiaonuo.money.entity.vo.MoneyProduceScreenVo;
 import vip.xiaonuo.money.mapper.MoneyProduce0422Mapper;
 import vip.xiaonuo.money.mapper.MoneyProduceIncomeMapper;
 import vip.xiaonuo.money.mapper.MoneyProduceMapper;
-import vip.xiaonuo.money.param.MoneyAnalysisParam;
-import vip.xiaonuo.money.param.MoneyInOutParam;
-import vip.xiaonuo.money.param.MoneyProduceIncomeParam;
-import vip.xiaonuo.money.param.MoneyProduceParam;
+import vip.xiaonuo.money.param.*;
 import vip.xiaonuo.money.service.IMoneyProduceService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
@@ -61,6 +60,11 @@ public class MoneyProduceServiceImpl extends ServiceImpl<MoneyProduceMapper, Mon
 //            String year = time.substring(0, 4);
             produce0422QueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
         }
+        if (1 == type) {
+            produce0422QueryWrapper.in("is_write",0, 1);
+        } else {
+            produce0422QueryWrapper.eq("is_write", 0);
+        }
         List<MoneyProduce0422> produce0422s = produce0422Mapper.selectList(produce0422QueryWrapper);
         double v1 = 0.0000;
         double v2 = 0.0000;
@@ -170,6 +174,11 @@ public class MoneyProduceServiceImpl extends ServiceImpl<MoneyProduceMapper, Mon
             produce0422QueryWrapper.between("create_time", calendar.getTime(), new Date());
             produce0422QueryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m'),material_type").orderByAsc("create_time");
         }
+        if (1 == type) {
+            produce0422QueryWrapper.in("is_write",0, 1);
+        } else {
+            produce0422QueryWrapper.eq("is_write", 0);
+        }
         produce0422QueryWrapper.select("IFNUll(sum(material_amount),'0') materialAmount,material_type materialType,create_time createTime");
         List<MoneyProduce0422> list = produce0422Mapper.selectList(produce0422QueryWrapper);
         JSONArray jsonArray = new JSONArray();
@@ -286,4 +295,80 @@ public class MoneyProduceServiceImpl extends ServiceImpl<MoneyProduceMapper, Mon
         return list;
     }
 
+    @Override
+    public CommonResult add(MoneyProduceAddParam addParam) {
+        String materialName = addParam.getMaterialName();
+        String orgId = addParam.getOrgId();
+        if ("".equals(orgId) || null == orgId) {
+            return CommonResult.error("公司不能为空");
+        }
+        Integer materType = getMaterType(materialName);
+        MoneyProduce0422 produce0422 = new MoneyProduce0422();
+        produce0422.setCreateTime(DateUtil.parse(addParam.getCreateTime()));
+        produce0422.setMaterialName(materialName);
+        produce0422.setMaterialType(materType);
+        produce0422.setMaterialAmount("-"+addParam.getMaterialAmount());
+        produce0422.setWriteMoney(addParam.getMaterialAmount());
+        produce0422.setOrgName(addParam.getOrgName());
+        produce0422.setCustomerName(addParam.getCustomerName());
+        produce0422.setIsWrite(1);
+        produce0422.setOrgId(orgId);
+        produce0422Mapper.insert(produce0422);
+        return CommonResult.ok();
+    }
+
+    @Override
+    public CommonResult edit(MoneyProduceEditParam editParam) {
+        String materialName = editParam.getMaterialName();
+        Integer materType = getMaterType(materialName);
+        MoneyProduce0422 produce0422 = produce0422Mapper.selectById(editParam.getId());
+        produce0422.setCreateTime(DateUtil.parse(editParam.getCreateTime()));
+        produce0422.setMaterialName(materialName);
+        produce0422.setMaterialType(materType);
+        produce0422.setMaterialAmount("-"+editParam.getMaterialAmount());
+        produce0422.setWriteMoney(editParam.getMaterialAmount());
+        produce0422.setOrgName(editParam.getOrgName());
+        produce0422.setCustomerName(editParam.getCustomerName());
+        produce0422.setIsWrite(1);
+        produce0422.setOrgId(editParam.getOrgId());
+        produce0422Mapper.updateById(produce0422);
+        return CommonResult.ok();
+    }
+
+    @Override
+    public CommonResult delete(Map<String, String> paramsMap) {
+        String id = paramsMap.get("id");
+        produce0422Mapper.deleteById(id);
+        return CommonResult.ok();
+    }
+
+    @Override
+    public Page<MoneyProduce0422> page(MoneyInOutPageParam inOutPageParam) {
+        String orgId = inOutPageParam.getOrgId();
+        Integer pageNum = inOutPageParam.getPageNum();
+        Integer pageSize = inOutPageParam.getPageSize();
+        QueryWrapper<MoneyProduce0422> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        Page<MoneyProduce0422> page = new Page(pageNum, pageSize);
+        return produce0422Mapper.selectPage(page, queryWrapper);
+    }
+
+    private Integer getMaterType(String fname) {
+        if ("NF级胆固醇".equals(fname)){
+            return 0;
+        }
+        if ("羊毛酸异丙酯".equals(fname)){
+            return 4;
+        }
+        if (fname.contains( "饲料级胆固醇")){
+            return 1;
+        }
+        if (fname.contains( "羊毛醇")){
+            return 2;
+        }
+        if (fname.contains( "羊毛酸")){
+            return 3;
+        }
+        return 5;
+    }
 }

+ 3 - 3
huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchaseContractServiceImpl.java

@@ -44,7 +44,7 @@ public class PurchaseContractServiceImpl extends ServiceImpl<PurchaseContractMap
         Integer number = orderParam.getNumber();
         QueryWrapper<PurchaseContract> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
-        queryWrapper.select(" IFNULL(sum(contract_money),'0') contractMoney,create_time createTime,IFNULL(count(*),'0') materialNumber");
+        queryWrapper.select(" IFNULL(sum(contract_money),'0') contractMoney,create_time createTime,IFNULL(count(DISTINCT contract_order),'0') materialNumber");
         BigDecimal math = new BigDecimal("10000");
 
         List<PurchaseContractVo> list = new ArrayList<>();
@@ -59,7 +59,7 @@ public class PurchaseContractServiceImpl extends ServiceImpl<PurchaseContractMap
             if ("".equals(orderParam.getOrderType()) || null == orderParam.getOrderType()) {
                 queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y')");
             } else {
-//                queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y')" + "," + orderParam.getOrderType());
+                queryWrapper.eq("order_type", orderParam.getOrderType());
                 queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y')" );
             }
             List<PurchaseContract> contracts = contractMapper.selectList(queryWrapper);
@@ -87,8 +87,8 @@ public class PurchaseContractServiceImpl extends ServiceImpl<PurchaseContractMap
             if ("".equals(orderParam.getOrderType()) || null == orderParam.getOrderType()) {
                 queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')");
             } else {
+                queryWrapper.eq("order_type", orderParam.getOrderType());
                 queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')");
-//                queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')" + "," + orderParam.getOrderType());
             }
             List<PurchaseContract> contracts = contractMapper.selectList(queryWrapper);
             if (contracts.size() != 0) {

+ 28 - 16
huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchaseOrderServiceImpl.java

@@ -61,8 +61,17 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
         String time = purchaseParam.getTime();
         DateTime dateTime = DateUtil.beginOfYear(new Date());
+
+        QueryWrapper<PurchaseOrder> acceptMoneyMapper = new QueryWrapper<>();
+        //收料金额和数量
+        acceptMoneyMapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        QueryWrapper<PurchaseOrder> orderQueryWrapper = new QueryWrapper<>();
+        orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        orderQueryWrapper.groupBy("order_number");
         if ("".equals(time) || null == time) {
             queryWrapper.ge("create_time", dateTime);
+            orderQueryWrapper.ge("create_time", dateTime);
+            acceptMoneyMapper.ge("create_time", dateTime);
             DateTime time1 = DateUtil.beginOfMonth(new Date());
             DateTime last = DateUtil.lastMonth();
             DateTime beginOfMonth = DateUtil.beginOfMonth(last);
@@ -87,6 +96,8 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
             }
         } else {
             queryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
+            orderQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
+            acceptMoneyMapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
             String year = time.substring(0, 4);
             String month = time.substring(5, 7);
             YearMonth yearMonth = YearMonth.of(Integer.parseInt(year), Integer.parseInt(month));
@@ -105,16 +116,21 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
                 vo.setMonthRank("0");
             } else if (ObjectUtil.isEmpty(order1)||order1.getInvoicePrice().equals("0")) {
                 vo.setMonthRank("100");
+
+
+
             } else {
                 DecimalFormat def = new DecimalFormat("0.00");
                 vo.setMonthRank(def.format((Double.valueOf(order.getInvoicePrice()) - Double.valueOf(order1.getInvoicePrice()))/Double.valueOf(order1.getInvoicePrice())*100));
             }
         }
+        acceptMoneyMapper.select(" convert(IFNULL(sum(material_accept_number),'0'),decimal(10,2)) materialAcceptNumber,convert(IFNULL(sum(material_accept_price),'0'),decimal(10,2)) materialAcceptPrice");
         List<PurchaseOrder> purchaseOrders = purchaseOrderMapper.selectList(queryWrapper);
-
+        List<PurchaseOrder> orderList = purchaseOrderMapper.selectList(orderQueryWrapper);
+        PurchaseOrder one = purchaseOrderMapper.selectOne(acceptMoneyMapper);
         double money = 0.00;
-        double acceptNumber = 0.00;
-        double acceptMoney = 0.00;
+//        double acceptNumber = 0.00;
+//        double acceptMoney = 0.00;
         double enterNumber = 0.00;
         double enterMoney = 0.00;
         double invoiceMoney = 0.00;
@@ -125,12 +141,6 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
                 if (purchaseOrder.getPurchaseMoney() != null) {
                     money = money + Double.valueOf(purchaseOrder.getPurchaseMoney());
                 }
-                if (purchaseOrder.getMaterialAcceptPrice() != null) {
-                    acceptMoney = acceptMoney + Double.valueOf(purchaseOrder.getMaterialAcceptPrice());
-                }
-                if (purchaseOrder.getMaterialAcceptNumber() != null) {
-                    acceptNumber = acceptNumber + Double.valueOf(purchaseOrder.getMaterialAcceptNumber());
-                }
                 if (purchaseOrder.getEnterNumber() != null) {
                     enterNumber = enterNumber + Double.valueOf(purchaseOrder.getEnterNumber());
                 }
@@ -161,14 +171,16 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         PurchaseOrder order = purchaseOrderMapper.selectOne(queryWrapper2);
 
         vo.setRank(order.getRank());
-        vo.setOrderNumber(String.valueOf(purchaseOrders.size()));
+
+
+        vo.setOrderNumber(String.valueOf(orderList.size()));
+        vo.setInvoiceNumber(orderList.size());
 
         vo.setPurchaseMoney(def.format(money / 10000));
-        vo.setMaterialAcceptPrice(def.format(acceptMoney / 10000));
-        vo.setMaterialAcceptNumber(def.format(acceptNumber));
+        vo.setMaterialAcceptPrice(def.format(Double.valueOf(one.getMaterialAcceptPrice()) / 10000));
+        vo.setMaterialAcceptNumber(one.getMaterialAcceptNumber());
         vo.setEnterNumber(def.format(enterNumber));
         vo.setEnterPrice(def.format(enterMoney / 10000));
-        vo.setInvoiceNumber(purchaseOrders.size());
         vo.setInvoicePrice(def.format(invoiceMoney / 10000));
 
 
@@ -200,7 +212,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
             queryWrapper.eq("order_type", orderType);
         }
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,create_time createTime,IFNULL(count(*),'0') invoiceNumber");
+        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,create_time createTime,IFNULL(count(DISTINCT order_number),'0') orderNumber");
         BigDecimal math = new BigDecimal("10000");
         List<PurchaseOrderMoneyVo> list = new ArrayList<>();
 
@@ -227,7 +239,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
                     BigDecimal bd = new BigDecimal(order.getPurchaseMoney());
                     bd = bd.divide(math, 2, RoundingMode.HALF_UP);
                     vo.setOrderMoney(bd.toString());
-                    vo.setOrderNumber(order.getInvoiceNumber());
+                    vo.setOrderNumber(Integer.parseInt(order.getOrderNumber()));
                     list.add(vo);
                 }
             }
@@ -254,7 +266,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
                     BigDecimal bd = new BigDecimal(order.getPurchaseMoney());
                     bd = bd.divide(math, 2, RoundingMode.HALF_UP);
                     vo.setOrderMoney(bd.toString());
-                    vo.setOrderNumber(order.getInvoiceNumber());
+                    vo.setOrderNumber(Integer.parseInt(order.getOrderNumber()));
                     list.add(vo);
                 }
             }

+ 20 - 2
huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleTargetServiceImpl.java

@@ -49,6 +49,8 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
     private SaleOrderMapper orderMapper;
     @Autowired
     private SaleReceiveMapper receiveMapper;
+    @Autowired
+    private SaleDetailMapper saleDetailMapper;
 
     @Override
     public JSONArray getTarget(SaleParam saleParam) {
@@ -113,8 +115,24 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
 
         monthTarget.setCompleteRate("0");
         yearTarget.setCompleteRate("0");
-        monthTarget.setContractMoney(bg.divide(math, 2, RoundingMode.HALF_UP).toString());
-        yearTarget.setContractMoney(bg1.divide(math, 2, RoundingMode.HALF_UP).toString());
+
+
+        QueryWrapper<SaleDetail> queryWrapper2 = new QueryWrapper<>();
+        queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        queryWrapper2.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
+        queryWrapper2.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        SaleDetail monthSaleDetail = saleDetailMapper.selectOne(queryWrapper2);
+        queryWrapper2.clear();
+        queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        queryWrapper2.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
+        queryWrapper2.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        SaleDetail yearDaleDetail = saleDetailMapper.selectOne(queryWrapper2);
+        BigDecimal bg6 = new BigDecimal(monthSaleDetail.getSaleMoney());
+        BigDecimal bg7 = new BigDecimal(yearDaleDetail.getSaleMoney());
+        monthTarget.setContractMoney(bg6.divide(math, 2, RoundingMode.HALF_UP).toString());
+        yearTarget.setContractMoney(bg7.divide(math, 2, RoundingMode.HALF_UP).toString());
+        
+        
         monthTarget.setSaleOrderMoney(bg.divide(math, 2, RoundingMode.HALF_UP).toString());
         yearTarget.setSaleOrderMoney(bg1.divide(math, 2, RoundingMode.HALF_UP).toString());
         monthTarget.setSaleDeliverMoney(bg2.divide(math, 2, RoundingMode.HALF_UP).toString());

+ 2 - 1
snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/org/controller/SysOrgController.java

@@ -196,7 +196,8 @@ public class SysOrgController {
        String orgIds = loginUser.getOrgIds();
         if (ObjectUtil.isNotEmpty(orgIds)){
             String[] split = orgIds.split(",");
-            List<SysOrg> sysOrgs = sysOrgService.list(new QueryWrapper<SysOrg>().in("ID",split ));
+            //花园不显示
+            List<SysOrg> sysOrgs = sysOrgService.list(new QueryWrapper<SysOrg>().in("ID",split ).orderByAsc("SORT_CODE").ne("ID","1856160583875837954"));
             if (sysOrgs.size()>2){
                 JSONObject jsonObject = new JSONObject();
                 jsonObject.put("name", "全部");