diff --git a/ruoyi-admin/src/main/resources/templates/manage/delivery/selectOrder.html b/ruoyi-admin/src/main/resources/templates/manage/delivery/selectOrder.html
index 27774c6f..ae215ba3 100644
--- a/ruoyi-admin/src/main/resources/templates/manage/delivery/selectOrder.html
+++ b/ruoyi-admin/src/main/resources/templates/manage/delivery/selectOrder.html
@@ -53,6 +53,10 @@
{
field: 'orderCode',
title: '合同编号'
+ },
+ {
+ field: 'versionCode',
+ title: '版本号'
},
{
field: 'orderName',
diff --git a/ruoyi-admin/src/main/resources/templates/project/order/add.html b/ruoyi-admin/src/main/resources/templates/project/order/add.html
new file mode 100644
index 00000000..03be2bb9
--- /dev/null
+++ b/ruoyi-admin/src/main/resources/templates/project/order/add.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ruoyi-admin/src/main/resources/templates/project/order/edit.html b/ruoyi-admin/src/main/resources/templates/project/order/edit.html
new file mode 100644
index 00000000..60d0f2ef
--- /dev/null
+++ b/ruoyi-admin/src/main/resources/templates/project/order/edit.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ruoyi-admin/src/main/resources/templates/project/order/order.html b/ruoyi-admin/src/main/resources/templates/project/order/order.html
new file mode 100644
index 00000000..b33331ff
--- /dev/null
+++ b/ruoyi-admin/src/main/resources/templates/project/order/order.html
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java
new file mode 100644
index 00000000..49896873
--- /dev/null
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java
@@ -0,0 +1,128 @@
+package com.ruoyi.sip.controller;
+
+import java.util.List;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.sip.domain.ProjectOrderInfo;
+import com.ruoyi.sip.service.IProjectOrderInfoService;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 订单管理Controller
+ *
+ * @author ruoyi
+ * @date 2025-05-30
+ */
+@Controller
+@RequestMapping("/project/order")
+public class ProjectOrderInfoController extends BaseController
+{
+ private String prefix = "project/order";
+
+ @Autowired
+ private IProjectOrderInfoService projectOrderInfoService;
+
+ @RequiresPermissions("project:order:view")
+ @GetMapping()
+ public String order()
+ {
+ return prefix + "/order";
+ }
+
+ /**
+ * 查询订单管理列表
+ */
+ @RequiresPermissions("project:order:list")
+ @PostMapping("/list")
+ @ResponseBody
+ public TableDataInfo list(ProjectOrderInfo projectOrderInfo)
+ {
+ startPage();
+ List list = projectOrderInfoService.selectProjectOrderInfoList(projectOrderInfo);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出订单管理列表
+ */
+ @RequiresPermissions("project:order:export")
+ @Log(title = "订单管理", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ @ResponseBody
+ public AjaxResult export(ProjectOrderInfo projectOrderInfo)
+ {
+ List list = projectOrderInfoService.selectProjectOrderInfoList(projectOrderInfo);
+ ExcelUtil util = new ExcelUtil(ProjectOrderInfo.class);
+ return util.exportExcel(list, "订单管理数据");
+ }
+
+ /**
+ * 新增订单管理
+ */
+ @RequiresPermissions("project:order:add")
+ @GetMapping("/add")
+ public String add()
+ {
+ return prefix + "/add";
+ }
+
+ /**
+ * 新增保存订单管理
+ */
+ @RequiresPermissions("project:order:add")
+ @Log(title = "订单管理", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @ResponseBody
+ public AjaxResult addSave(ProjectOrderInfo projectOrderInfo)
+ {
+ return toAjax(projectOrderInfoService.insertProjectOrderInfo(projectOrderInfo));
+ }
+
+ /**
+ * 修改订单管理
+ */
+ @RequiresPermissions("project:order:edit")
+ @GetMapping("/edit/{id}")
+ public String edit(@PathVariable("id") Long id, ModelMap mmap)
+ {
+ ProjectOrderInfo projectOrderInfo = projectOrderInfoService.selectProjectOrderInfoById(id);
+ mmap.put("projectOrderInfo", projectOrderInfo);
+ return prefix + "/edit";
+ }
+
+ /**
+ * 修改保存订单管理
+ */
+ @RequiresPermissions("project:order:edit")
+ @Log(title = "订单管理", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @ResponseBody
+ public AjaxResult editSave(ProjectOrderInfo projectOrderInfo)
+ {
+ return toAjax(projectOrderInfoService.updateProjectOrderInfo(projectOrderInfo));
+ }
+
+ /**
+ * 删除订单管理
+ */
+ @RequiresPermissions("project:order:remove")
+ @Log(title = "订单管理", businessType = BusinessType.DELETE)
+ @PostMapping( "/remove")
+ @ResponseBody
+ public AjaxResult remove(String ids)
+ {
+ return toAjax(projectOrderInfoService.deleteProjectOrderInfoByIds(ids));
+ }
+}
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectInfo.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectInfo.java
index c382a653..61a7cd95 100644
--- a/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectInfo.java
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectInfo.java
@@ -87,11 +87,17 @@ public class ProjectInfo extends BaseEntity
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@Excel(name = "预计下单时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date estimatedOrderTime;
+ private Date estimatedOrderTimeStart;
+ private Date estimatedOrderTimeEnd;
/** 预计发货时间 */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@Excel(name = "预计发货时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date estimatedDeliverTime;
+ private Date estimatedDeliverTimeStart;
+ private Date estimatedDeliverTimeEnd;
+ private Date updateTimeStart;
+ private Date updateTimeEnd;
/** 竞争对手 */
@Excel(name = "竞争对手")
@@ -113,6 +119,7 @@ public class ProjectInfo extends BaseEntity
@Excel(name = "项目描述")
private String projectDesc;
private Boolean highlight;
+ private Boolean canGenerate;
/** 软件项目产品信息 */
private List softwareProjectProductInfoList;
/** 硬件项目产品信息 */
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectOrderInfo.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectOrderInfo.java
new file mode 100644
index 00000000..69eeb2e0
--- /dev/null
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/domain/ProjectOrderInfo.java
@@ -0,0 +1,170 @@
+package com.ruoyi.sip.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 订单管理对象 project_order_info
+ *
+ * @author ruoyi
+ * @date 2025-05-30
+ */
+@Data
+public class ProjectOrderInfo extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ *
+ */
+ private Long id;
+
+ /**
+ * 项目主键
+ */
+
+ private Long projectId;
+ private String projectCode;
+ private String projectName;
+ private String customerName;
+ private String industryType;
+ private String province;
+
+ /**
+ * 地市
+ */
+ @Excel(name = "地市")
+ private String city;
+
+ /**
+ * 进货商商务接口人姓名
+ */
+ @Excel(name = "进货商商务接口人姓名")
+ private String businessPerson;
+
+ /**
+ * 邮箱
+ */
+ @Excel(name = "邮箱")
+ private String businessEmail;
+
+ /**
+ * 电话
+ */
+ @Excel(name = "电话")
+ private String businessPhone;
+
+ /**
+ * 合同编号
+ */
+ @Excel(name = "合同编号")
+ private String orderCode;
+
+ /**
+ * 币种
+ */
+ @Excel(name = "币种")
+ private String currencyType;
+
+ /**
+ * 出货金额
+ */
+ @Excel(name = "出货金额")
+ private BigDecimal shipmentAmount;
+
+ /**
+ * 实际进货金额
+ */
+ @Excel(name = "实际进货金额")
+ private BigDecimal actualPurchaseAmount;
+
+ /**
+ * 执行单有效截止时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @Excel(name = "执行单有效截止时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date orderEndTime;
+
+ /**
+ * 要求到货时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @Excel(name = "要求到货时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date deliveryTime;
+
+ /**
+ * 公司直发
+ */
+ @Excel(name = "公司直发")
+ private String companyDelivery;
+
+ /**
+ * 通知人
+ */
+ @Excel(name = "通知人")
+ private String notifier;
+
+ /**
+ * 通知人邮箱
+ */
+ @Excel(name = "通知人邮箱")
+ private String notifierEmail;
+
+ /**
+ * 通知人电话
+ */
+ @Excel(name = "通知人电话")
+ private String notifierPhone;
+
+ /**
+ * 责任人
+ */
+ @Excel(name = "责任人")
+ private String duty;
+
+ /**
+ * 责任人邮箱
+ */
+ @Excel(name = "责任人邮箱")
+ private String dutyEmail;
+
+ /**
+ * 责任人电话
+ */
+ @Excel(name = "责任人电话")
+ private String dutyPhone;
+
+ /**
+ * 下单通路
+ */
+ @Excel(name = "下单通路")
+ private String orderChannel;
+
+ /**
+ * 进货商
+ */
+ @Excel(name = "进货商")
+ private String partnerCode;
+ private String partnerName;
+ private String level;
+
+
+ /**
+ * 供货商
+ */
+ @Excel(name = "供货商")
+ private String supplier;
+
+ /**
+ * 订单状态
+ */
+ @Excel(name = "订单状态")
+ private String orderStatus;
+
+}
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/mapper/ProjectOrderInfoMapper.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/mapper/ProjectOrderInfoMapper.java
new file mode 100644
index 00000000..3d3d7137
--- /dev/null
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/mapper/ProjectOrderInfoMapper.java
@@ -0,0 +1,63 @@
+package com.ruoyi.sip.mapper;
+
+import java.util.List;
+import com.ruoyi.sip.domain.ProjectOrderInfo;
+
+/**
+ * 订单管理Mapper接口
+ *
+ * @author ruoyi
+ * @date 2025-05-30
+ */
+public interface ProjectOrderInfoMapper
+{
+ /**
+ * 查询订单管理
+ *
+ * @param id 订单管理主键
+ * @return 订单管理
+ */
+ public ProjectOrderInfo selectProjectOrderInfoById(Long id);
+
+ /**
+ * 查询订单管理列表
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 订单管理集合
+ */
+ public List selectProjectOrderInfoList(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 新增订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ public int insertProjectOrderInfo(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 修改订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ public int updateProjectOrderInfo(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 删除订单管理
+ *
+ * @param id 订单管理主键
+ * @return 结果
+ */
+ public int deleteProjectOrderInfoById(Long id);
+
+ /**
+ * 批量删除订单管理
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteProjectOrderInfoByIds(String[] ids);
+
+ List selectProjectOrderInfoByProjectId(List projectId);
+}
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/service/IProjectOrderInfoService.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/IProjectOrderInfoService.java
new file mode 100644
index 00000000..3eba2b26
--- /dev/null
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/IProjectOrderInfoService.java
@@ -0,0 +1,71 @@
+package com.ruoyi.sip.service;
+
+import java.util.List;
+import com.ruoyi.sip.domain.ProjectOrderInfo;
+
+/**
+ * 订单管理Service接口
+ *
+ * @author ruoyi
+ * @date 2025-05-30
+ */
+public interface IProjectOrderInfoService
+{
+ /**
+ * 查询订单管理
+ *
+ * @param id 订单管理主键
+ * @return 订单管理
+ */
+ public ProjectOrderInfo selectProjectOrderInfoById(Long id);
+
+ /**
+ * 查询订单管理列表
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 订单管理集合
+ */
+ public List selectProjectOrderInfoList(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 新增订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ public int insertProjectOrderInfo(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 修改订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ public int updateProjectOrderInfo(ProjectOrderInfo projectOrderInfo);
+
+ /**
+ * 批量删除订单管理
+ *
+ * @param ids 需要删除的订单管理主键集合
+ * @return 结果
+ */
+ public int deleteProjectOrderInfoByIds(String ids);
+
+ /**
+ * 删除订单管理信息
+ *
+ * @param id 订单管理主键
+ * @return 结果
+ */
+ public int deleteProjectOrderInfoById(Long id);
+
+ /**
+ * 根据projectId查询订单信息
+ * @param projectId
+ * @return java.util.List
+ * @author ch
+ * @date 2025/05/30 16:13
+ */
+
+ List< ProjectOrderInfo> selectProjectOrderInfoByProjectId(List projectId);
+}
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectInfoServiceImpl.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectInfoServiceImpl.java
index 6321134d..5a700af8 100644
--- a/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectInfoServiceImpl.java
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectInfoServiceImpl.java
@@ -3,15 +3,13 @@ package com.ruoyi.sip.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.text.Convert;
+import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.ShiroUtils;
import com.ruoyi.sip.domain.*;
import com.ruoyi.sip.mapper.ProjectInfoMapper;
-import com.ruoyi.sip.service.IProjectInfoService;
-import com.ruoyi.sip.service.IProjectOperateLogService;
-import com.ruoyi.sip.service.IProjectProductInfoService;
-import com.ruoyi.sip.service.IProjectWorkProgressService;
+import com.ruoyi.sip.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -20,6 +18,7 @@ import java.time.LocalDate;
import java.time.Period;
import java.time.ZoneId;
import java.util.*;
+import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -41,6 +40,8 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
@Autowired
private IProjectOperateLogService operateLogService;
+ @Autowired
+ private IProjectOrderInfoService orderInfoService;
private static final String PROJECT_CODE_PREFIX = "V";
private static final Integer PROJECT_CODE_LENGTH = 5;
@@ -80,13 +81,17 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
*/
@Override
public List selectProjectInfoList(ProjectInfo projectInfo) {
- //todo 生成订单按钮置灰查询
List projectInfos = projectInfoMapper.selectProjectInfoList(projectInfo);
+
+ List idList = projectInfos.stream().map(ProjectInfo::getId).collect(Collectors.toList());
+ List projectOrderInfos = orderInfoService.selectProjectOrderInfoByProjectId(idList);
+ Map orderInfoMap = projectOrderInfos.stream().collect(Collectors.toMap(ProjectOrderInfo::getProjectId, Function.identity(), (v1, v2) -> v1));
LocalDate now = LocalDate.now();
for (ProjectInfo info : projectInfos) {
LocalDate localDate = info.getUpdateTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
Period between = Period.between(localDate, now);
info.setHighlight(between.getMonths() >= 2);
+ info.setCanGenerate(orderInfoMap.get(info.getId()) == null);
}
return projectInfos;
}
@@ -161,7 +166,11 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
ProjectInfo oldProjectInfo = this.selectProjectInfoById(projectInfo.getId());
//变更属地校验
if (!projectInfo.getProvince().equals(oldProjectInfo.getProvince())) {
- //todo 查询订单信息 如果有抛出异常
+ //查询订单信息 如果有抛出异常
+ List projectOrderInfos = orderInfoService.selectProjectOrderInfoByProjectId(Collections.singletonList(projectInfo.getId()));
+ if (CollUtil.isNotEmpty(projectOrderInfos)) {
+ throw new ServiceException("该项目存在订单流转,无法更改属地");
+ }
//如果没有 变更编码 是否考虑高并发加锁
setProjectCode(projectInfo);
}
diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectOrderInfoServiceImpl.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectOrderInfoServiceImpl.java
new file mode 100644
index 00000000..1e7afe82
--- /dev/null
+++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/service/impl/ProjectOrderInfoServiceImpl.java
@@ -0,0 +1,101 @@
+package com.ruoyi.sip.service.impl;
+
+import java.util.Collections;
+import java.util.List;
+
+import cn.hutool.core.collection.CollUtil;
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.sip.mapper.ProjectOrderInfoMapper;
+import com.ruoyi.sip.domain.ProjectOrderInfo;
+import com.ruoyi.sip.service.IProjectOrderInfoService;
+import com.ruoyi.common.core.text.Convert;
+
+/**
+ * 订单管理Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2025-05-30
+ */
+@Service
+public class ProjectOrderInfoServiceImpl implements IProjectOrderInfoService {
+ @Autowired
+ private ProjectOrderInfoMapper projectOrderInfoMapper;
+
+ /**
+ * 查询订单管理
+ *
+ * @param id 订单管理主键
+ * @return 订单管理
+ */
+ @Override
+ public ProjectOrderInfo selectProjectOrderInfoById(Long id) {
+ return projectOrderInfoMapper.selectProjectOrderInfoById(id);
+ }
+
+ /**
+ * 查询订单管理列表
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 订单管理
+ */
+ @Override
+ public List selectProjectOrderInfoList(ProjectOrderInfo projectOrderInfo) {
+ return projectOrderInfoMapper.selectProjectOrderInfoList(projectOrderInfo);
+ }
+
+ /**
+ * 新增订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ @Override
+ public int insertProjectOrderInfo(ProjectOrderInfo projectOrderInfo) {
+ projectOrderInfo.setCreateTime(DateUtils.getNowDate());
+ return projectOrderInfoMapper.insertProjectOrderInfo(projectOrderInfo);
+ }
+
+ /**
+ * 修改订单管理
+ *
+ * @param projectOrderInfo 订单管理
+ * @return 结果
+ */
+ @Override
+ public int updateProjectOrderInfo(ProjectOrderInfo projectOrderInfo) {
+ projectOrderInfo.setUpdateTime(DateUtils.getNowDate());
+ return projectOrderInfoMapper.updateProjectOrderInfo(projectOrderInfo);
+ }
+
+ /**
+ * 批量删除订单管理
+ *
+ * @param ids 需要删除的订单管理主键
+ * @return 结果
+ */
+ @Override
+ public int deleteProjectOrderInfoByIds(String ids) {
+ return projectOrderInfoMapper.deleteProjectOrderInfoByIds(Convert.toStrArray(ids));
+ }
+
+ /**
+ * 删除订单管理信息
+ *
+ * @param id 订单管理主键
+ * @return 结果
+ */
+ @Override
+ public int deleteProjectOrderInfoById(Long id) {
+ return projectOrderInfoMapper.deleteProjectOrderInfoById(id);
+ }
+
+ @Override
+ public List selectProjectOrderInfoByProjectId(List projectId) {
+ if (CollUtil.isNotEmpty(projectId)) {
+ return Collections.emptyList();
+ }
+ return projectOrderInfoMapper.selectProjectOrderInfoByProjectId(projectId);
+ }
+}
diff --git a/ruoyi-sip/src/main/resources/mapper/sip/ProjectInfoMapper.xml b/ruoyi-sip/src/main/resources/mapper/sip/ProjectInfoMapper.xml
index 7103415a..dda78f1a 100644
--- a/ruoyi-sip/src/main/resources/mapper/sip/ProjectInfoMapper.xml
+++ b/ruoyi-sip/src/main/resources/mapper/sip/ProjectInfoMapper.xml
@@ -58,7 +58,48 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and estimated_amount = #{estimatedAmount}
and currency_type = #{currencyType}
and estimated_order_time = #{estimatedOrderTime}
+
+
+
+ and estimated_order_time = ]]> #{estimatedOrderTimeStart}
+
+
+ and estimated_order_time #{estimatedOrderTimeEnd}
+
+
+ and estimated_order_time between #{estimatedOrderTimeStart} and #{estimatedOrderTimeEnd}
+
+
+
and estimated_deliver_time = #{estimatedDeliverTime}
+
+
+
+ and estimated_deliver_time = ]]> #{estimatedDeliverTimeStart}
+
+
+ and estimated_deliver_time #{estimatedDeliverTimeEnd}
+
+
+ and estimated_deliver_time between #{estimatedDeliverTimeStart} and #{estimatedDeliverTimeEnd}
+
+
+
+
+
+
+
+ and update_time = ]]> #{updateTimeStart}
+
+
+ and update_time #{updateTimeEnd}
+
+
+ and update_time between #{updateTimeStart} and #{updateTimeEnd}
+
+
+
+
and competitor = #{competitor}
and country_product = #{countryProduct}
and server_configuration = #{serverConfiguration}
diff --git a/ruoyi-sip/src/main/resources/mapper/sip/ProjectOrderInfoMapper.xml b/ruoyi-sip/src/main/resources/mapper/sip/ProjectOrderInfoMapper.xml
new file mode 100644
index 00000000..acb155c4
--- /dev/null
+++ b/ruoyi-sip/src/main/resources/mapper/sip/ProjectOrderInfoMapper.xml
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, project_id, city, business_person, business_email, business_phone, order_code, currencyType,
+ shipment_amount, actual_purchase_amount, order_end_time, delivery_time, company_delivery, notifier,
+ notifier_email, notifier_phone, duty, duty_email, duty_phone, order_channel, partner_code, supplier,
+ remark, order_status, create_by, create_time, update_by, update_time from project_order_info t1
+
+
+ select t1.id, t1.project_id, t1.city, t1.business_person, t1.business_email, t1.business_phone, t1.order_code, t1.currencyType,
+ t1.shipment_amount, t1.actual_purchase_amount, t1.order_end_time, t1.delivery_time, t1.company_delivery, t1.notifier,
+ t1.notifier_email, t1.notifier_phone, t1.duty, t1.duty_email, t1.duty_phone, t1.order_channel, t1.partner_code, t1.supplier,
+ t1.remark, t1.order_status, t1.create_by, t1.create_time, t1.update_by, t1.update_time
+ ,t2.project_code,t2.project_name,t2.province,t2.customer_name,t2.industry_type
+ ,t3.partner_name,t3.level
+ from project_order_info t1
+ left join project_info t2 on t1.project_id = t2.id
+ left join partner_info t3 on t1.partner_code=t3.partner_code
+
+
+
+
+
+
+
+
+ insert into project_order_info
+
+ project_id,
+ city,
+ business_person,
+ business_email,
+ business_phone,
+ order_code,
+ currencyType,
+ shipment_amount,
+ actual_purchase_amount,
+ order_end_time,
+ delivery_time,
+ company_delivery,
+ notifier,
+ notifier_email,
+ notifier_phone,
+ duty,
+ duty_email,
+ duty_phone,
+ order_channel,
+ partner_code,
+ supplier,
+ remark,
+ order_status,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+
+
+ #{projectId},
+ #{city},
+ #{businessPerson},
+ #{businessEmail},
+ #{businessPhone},
+ #{orderCode},
+ #{currencyType},
+ #{shipmentAmount},
+ #{actualPurchaseAmount},
+ #{orderEndTime},
+ #{deliveryTime},
+ #{companyDelivery},
+ #{notifier},
+ #{notifierEmail},
+ #{notifierPhone},
+ #{duty},
+ #{dutyEmail},
+ #{dutyPhone},
+ #{orderChannel},
+ #{partnerCode},
+ #{supplier},
+ #{remark},
+ #{orderStatus},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+
+
+
+
+ update project_order_info
+
+ project_id = #{projectId},
+ city = #{city},
+ business_person = #{businessPerson},
+ business_email = #{businessEmail},
+ business_phone = #{businessPhone},
+ order_code = #{orderCode},
+ currencyType = #{currencyType},
+ shipment_amount = #{shipmentAmount},
+ actual_purchase_amount = #{actualPurchaseAmount},
+ order_end_time = #{orderEndTime},
+ delivery_time = #{deliveryTime},
+ company_delivery = #{companyDelivery},
+ notifier = #{notifier},
+ notifier_email = #{notifierEmail},
+ notifier_phone = #{notifierPhone},
+ duty = #{duty},
+ duty_email = #{dutyEmail},
+ duty_phone = #{dutyPhone},
+ order_channel = #{orderChannel},
+ partner_code = #{partnerCode},
+ supplier = #{supplier},
+ remark = #{remark},
+ order_status = #{orderStatus},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+
+ where id = #{id}
+
+
+
+ delete from project_order_info where id = #{id}
+
+
+
+ delete from project_order_info where id in
+
+ #{id}
+
+
+
+
\ No newline at end of file