Min před 1 rokem
rodič
revize
9131016465

+ 32 - 27
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/ProductController.java

@@ -16,6 +16,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -99,13 +100,18 @@ public class ProductController {
             msg.setError("产品编码为["+product.getProductCode()+"]的产品已存在");
             return msg;
         }
+        Integer id = product.getId();
+        if(!productService.saveOrUpdate(product)){
+            msg.setError("验证失败");
+            return msg;
+        }
         //todo:生成操作记录
         AuditLogCenter auditLogCenter =new AuditLogCenter();
         auditLogCenter.setAuditorId(user.getId());
         auditLogCenter.setAuditorName(user.getName());
         auditLogCenter.setModuleId(product.getId());
         auditLogCenter.setModuleCode("Product");
-        if(product.getId()==null){
+        if(id==null){
             auditLogCenter.setAuditorContent("创建了产品");
             auditLogCenterService.save(auditLogCenter);
         }else {
@@ -119,10 +125,6 @@ public class ProductController {
             }
 
         }
-        if(!productService.saveOrUpdate(product)){
-            msg.setError("验证失败");
-            return msg;
-        }
         return msg;
     }
 
@@ -155,6 +157,7 @@ public class ProductController {
                 List<Product> productList = productService.list(new LambdaQueryWrapper<Product>().in(Product::getId, idList));
                 productList.forEach(p->{
                     p.setIsDelete(1);
+                    p.setUpdateTime(LocalDateTime.now());
                 });
                 if(!productService.updateBatchById(productList)){
                     msg.setError("验证失败");
@@ -316,6 +319,7 @@ public class ProductController {
         List<SalesOrder> orderList = salesOrderService.list(new LambdaQueryWrapper<SalesOrder>().in(SalesOrder::getId, orderIds));
         List<SysDict> orderTypeList = sysDictService.list(new LambdaQueryWrapper<SysDict>().eq(SysDict::getCode, "OrderType"));
         List<Integer> businessOpportunityIds = orderList.stream().map(SalesOrder::getBusinessOpportunityId).distinct().collect(Collectors.toList());
+        businessOpportunityIds.add(-1);
         List<BusinessOpportunity> businessOpportunityList = businessOpportunityService.list(new LambdaQueryWrapper<BusinessOpportunity>().in(BusinessOpportunity::getId, businessOpportunityIds));
         orderList.forEach(o->{
             Optional<Custom> custom = customList.stream().filter(ct -> ct.getId().equals(o.getCustomId())).findFirst();
@@ -379,29 +383,30 @@ public class ProductController {
             String[] idsSplit = ids.split(",");
             List<String> splitList = Arrays.asList(idsSplit);
             List<Integer> idList = splitList.stream().map(i -> Integer.valueOf(i)).collect(Collectors.toList());
-            idList.add(-1);
-            List<Product> productList = productService.list(new LambdaQueryWrapper<Product>().in(Product::getId, idList));
-            if(productList.size()>0){
-                productList.forEach(p->{
-                    p.setIsDelete(0);
-                });
-                productService.updateBatchById(productList);
-            }
-            List<AuditLogCenter> auditLogCenters =new ArrayList<>();
             if(idList.size()>0){
-                idList.forEach(i->{
-                    //todo: 生成操作记录
-                    AuditLogCenter auditLogCenter =new AuditLogCenter();
-                    auditLogCenter.setAuditorContent("恢复了产品");
-                    auditLogCenter.setAuditorId(user.getId());
-                    auditLogCenter.setAuditorName(user.getName());
-                    auditLogCenter.setModuleId(Integer.valueOf(i));
-                    auditLogCenter.setModuleCode("Product");
-                    auditLogCenters.add(auditLogCenter);
-                });
-            }
-            if(auditLogCenters.size()>0){
-                auditLogCenterService.saveBatch(auditLogCenters);
+                List<Product> productList = productService.list(new LambdaQueryWrapper<Product>().in(Product::getId, idList));
+                if(productList.size()>0){
+                    productList.forEach(p->{
+                        p.setIsDelete(0);
+                    });
+                    productService.updateBatchById(productList);
+                }
+                List<AuditLogCenter> auditLogCenters =new ArrayList<>();
+                if(idList.size()>0){
+                    idList.forEach(i->{
+                        //todo: 生成操作记录
+                        AuditLogCenter auditLogCenter =new AuditLogCenter();
+                        auditLogCenter.setAuditorContent("恢复了产品");
+                        auditLogCenter.setAuditorId(user.getId());
+                        auditLogCenter.setAuditorName(user.getName());
+                        auditLogCenter.setModuleId(Integer.valueOf(i));
+                        auditLogCenter.setModuleCode("Product");
+                        auditLogCenters.add(auditLogCenter);
+                    });
+                }
+                if(auditLogCenters.size()>0){
+                    auditLogCenterService.saveBatch(auditLogCenters);
+                }
             }
         }
         return msg;

+ 40 - 27
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/SalesOrderController.java

@@ -20,6 +20,7 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -89,7 +90,15 @@ public class SalesOrderController {
         Integer companyId = user.getCompanyId();
         order.setCompanyId(companyId);
         order.setCreatorId(user.getId());
-        if(order.getPrice()!=null){
+        if(order.getReceivedPayment()!=null){
+            BigDecimal price = order.getPrice();
+            if(order.getPrice().doubleValue()!=order.getReceivedPayment().doubleValue()){
+                order.setReceivedStatus(1);
+            }else {
+                order.setReceivedStatus(2);
+            }
+            order.setUnReceivedPayment(price.subtract(order.getReceivedPayment()));
+        }else {
             order.setUnReceivedPayment(order.getPrice());
         }
         int countCode;
@@ -109,13 +118,18 @@ public class SalesOrderController {
             msg.setError("订单名称为["+order.getOrderName()+"]的订单已存在");
             return msg;
         }
+        Integer id = order.getId();
+        if(!salesOrderService.saveOrUpdate(order)){
+            msg.setError("验证失败");
+            return msg;
+        }
         //todo:生成操作记录
         AuditLogCenter auditLogCenter =new AuditLogCenter();
         auditLogCenter.setAuditorId(user.getId());
         auditLogCenter.setAuditorName(user.getName());
         auditLogCenter.setModuleId(order.getId());
         auditLogCenter.setModuleCode("SalesOrder");;
-        if(order.getId()==null){
+        if(id==null){
             auditLogCenter.setAuditorContent("创建了订单");
             auditLogCenterService.save(auditLogCenter);
         }else {
@@ -129,10 +143,6 @@ public class SalesOrderController {
             }
 
         }
-        if(!salesOrderService.saveOrUpdate(order)){
-            msg.setError("验证失败");
-            return msg;
-        }
         //处理订单下的产品数据
         if(!StringUtils.isEmpty(order.getOrderProductDetailString())){
             String orderProductDetailString = order.getOrderProductDetailString();
@@ -209,6 +219,7 @@ public class SalesOrderController {
             }
             orderList.forEach(o->{
                 o.setIsDelete(1);
+                o.setUpdateTime(LocalDateTime.now());
             });
             if(!salesOrderService.updateBatchById(orderList)){
                 msg.setError("验证失败");
@@ -266,29 +277,31 @@ public class SalesOrderController {
             String[] idSplit = ids.split(",");
             List<String> splitList = Arrays.asList(idSplit);
             List<Integer> idList = splitList.stream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
-            List<SalesOrder> orderList = salesOrderService.list(new LambdaQueryWrapper<SalesOrder>().in(SalesOrder::getId, idList));
-            orderList.forEach(o->{
-                o.setIsDelete(0);
-            });
-            if(!salesOrderService.updateBatchById(orderList)){
-                msg.setError("验证失败");
-                return msg;
-            }
-            List<AuditLogCenter> auditLogCenters =new ArrayList<>();
             if(idList.size()>0){
-                idList.forEach(i->{
-                    //todo: 生成操作记录
-                    AuditLogCenter auditLogCenter =new AuditLogCenter();
-                    auditLogCenter.setAuditorContent("恢复了订单");
-                    auditLogCenter.setAuditorId(user.getId());
-                    auditLogCenter.setAuditorName(user.getName());
-                    auditLogCenter.setModuleId(Integer.valueOf(i));
-                    auditLogCenter.setModuleCode("SalesOrder");
-                    auditLogCenters.add(auditLogCenter);
+                List<SalesOrder> orderList = salesOrderService.list(new LambdaQueryWrapper<SalesOrder>().in(SalesOrder::getId, idList));
+                orderList.forEach(o->{
+                    o.setIsDelete(0);
                 });
-            }
-            if(auditLogCenters.size()>0){
-                auditLogCenterService.saveBatch(auditLogCenters);
+                if(!salesOrderService.updateBatchById(orderList)){
+                    msg.setError("验证失败");
+                    return msg;
+                }
+                List<AuditLogCenter> auditLogCenters =new ArrayList<>();
+                if(idList.size()>0){
+                    idList.forEach(i->{
+                        //todo: 生成操作记录
+                        AuditLogCenter auditLogCenter =new AuditLogCenter();
+                        auditLogCenter.setAuditorContent("恢复了订单");
+                        auditLogCenter.setAuditorId(user.getId());
+                        auditLogCenter.setAuditorName(user.getName());
+                        auditLogCenter.setModuleId(Integer.valueOf(i));
+                        auditLogCenter.setModuleCode("SalesOrder");
+                        auditLogCenters.add(auditLogCenter);
+                    });
+                }
+                if(auditLogCenters.size()>0){
+                    auditLogCenterService.saveBatch(auditLogCenters);
+                }
             }
         }
         return msg;

+ 2 - 2
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/AuditLogCenter.java

@@ -47,8 +47,8 @@ public class AuditLogCenter extends Model<AuditLogCenter> {
      * 操作时间
      */
     @TableField("audit_time")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
     private LocalDateTime auditTime;
 
     /**

+ 2 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/Product.java

@@ -150,6 +150,8 @@ public class Product extends Model<Product> {
     private Integer isDelete;
 
     @TableField("update_time")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime updateTime;
 
     @TableField(exist = false)

+ 3 - 3
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/ProductServiceImpl.java

@@ -389,20 +389,20 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> impl
             }
             if(importProductList.size()>0){
                if(!saveOrUpdateBatch(importProductList)){
-                   msg.setError("验证失败");
+                   msg.setError("验证失败,请检验数据格式是否正确");
                    return msg;
                }
             }
         } catch (IOException | NoSuchMethodException e) {
             e.printStackTrace();
-            msg.setError("验证失败");
+            msg.setError("验证失败,请检验数据格式是否正确");
         } catch (IllegalAccessException e) {
             e.printStackTrace();
         } catch (InvocationTargetException e) {
             e.printStackTrace();
         } catch (Exception e) {
             e.printStackTrace();
-            msg.setError("验证失败");
+            msg.setError("验证失败,请检验数据格式是否正确");
             return msg;
         }
         return msg;

+ 33 - 3
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/SalesOrderServiceImpl.java

@@ -560,20 +560,20 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
             }
             if(importOrderList.size()>0){
                 if(!saveOrUpdateBatch(importOrderList)){
-                    msg.setError("验证失败");
+                    msg.setError("验证失败,请检验数据格式是否正确");
                     return msg;
                 }
             }
         } catch (IOException | NoSuchMethodException e) {
             e.printStackTrace();
-            msg.setError("验证失败");
+            msg.setError("验证失败,请检验数据格式是否正确");
         } catch (IllegalAccessException e) {
             e.printStackTrace();
         } catch (InvocationTargetException e) {
             e.printStackTrace();
         } catch (Exception e) {
             e.printStackTrace();
-            msg.setError("验证失败");
+            msg.setError("验证失败,请检验数据格式是否正确");
         }
         return msg;
     }
@@ -630,6 +630,21 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
                                     value = String.valueOf(aClass.getMethod("getInchargerName").invoke(salesOrder));
                                 }
                             }
+                            if(model.equals("customId")){
+                                value = String.valueOf(aClass.getMethod("getCustomName").invoke(salesOrder));
+                            }
+                            if(model.equals("businessOpportunityId")){
+                                value = String.valueOf(aClass.getMethod("getBusinessOpportunityName").invoke(salesOrder));
+                            }
+                            if(model.equals("customSigner")){
+                                value = String.valueOf(aClass.getMethod("getCustomSignerName").invoke(salesOrder)==null?"":aClass.getMethod("getCustomSignerName").invoke(salesOrder));
+                            }
+                            if(model.equals("companySigner")){
+                                value = String.valueOf(aClass.getMethod("getCompanySignerName").invoke(salesOrder)==null?"":aClass.getMethod("getCompanySignerName").invoke(salesOrder));
+                            }
+                            if(model.equals("type")){
+                                value = String.valueOf(aClass.getMethod("getTypeName").invoke(salesOrder));
+                            }
                             item.add(value);
                         }
                     }
@@ -645,6 +660,21 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
                             value = String.valueOf(aClass.getMethod("getInchargerName").invoke(salesOrder));
                         }
                     }
+                    if(model.equals("customId")){
+                        value = String.valueOf(aClass.getMethod("getCustomName").invoke(salesOrder));
+                    }
+                    if(model.equals("businessOpportunityId")){
+                        value = String.valueOf(aClass.getMethod("getBusinessOpportunityName").invoke(salesOrder));
+                    }
+                    if(model.equals("customSigner")){
+                        value = String.valueOf(aClass.getMethod("getCustomSignerName").invoke(salesOrder)==null?"":aClass.getMethod("getCustomSignerName").invoke(salesOrder));
+                    }
+                    if(model.equals("companySigner")){
+                        value = String.valueOf(aClass.getMethod("getCompanySignerName").invoke(salesOrder)==null?"":aClass.getMethod("getCompanySignerName").invoke(salesOrder));
+                    }
+                    if(model.equals("type")){
+                        value = String.valueOf(aClass.getMethod("getTypeName").invoke(salesOrder));
+                    }
                     item.add(value);
                 }
             }

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/TaskController.java

@@ -189,7 +189,7 @@ public class TaskController {
             if(user.getCompanyId()==3092){
                 Project project = projectService.getById(task.getProjectId());
                 //除了报价项目  售后报价项目和研发项目不管控  其它项目都管控
-                if(task.getGroupId()!=null&&(project.getCategory()!=null && !(project.getCategory()==644 || project.getCategory()==647 || project.getCategory()==697))){
+                if(task.getGroupId()!=null&&(project.getCategory()!=null && !(project.getCategory()==644 || project.getCategory()==647 || project.getCategory()==697 ||project.getCategory()==804 ))){
                     TaskGroup taskGroup = taskGroupService.getById(task.getGroupId());
                     if(taskGroup.getManDay()==null){
                         msg.setError("创建失败,请先分配任务分组的预估工时");

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml

@@ -1921,7 +1921,7 @@
         left join task t on t.id=te.task_id
         left join project p on p.id=t.project_id
         left join project_category pc on pc.id=p.category
-        where u.company_id=#{companyId} and te.project_id is not null  and pc.name not in ('报价项目','售后报价项目','研发项目')
+        where u.company_id=#{companyId} and te.project_id is not null  and pc.name not in ('报价项目','售后报价项目','研发项目','运维项目')
         <if test="projectId!=null">
             and p.id=#{projectId}
         </if>
@@ -1952,7 +1952,7 @@
         left join task t on t.id=te.task_id
         left join project p on p.id=t.project_id
         left join project_category pc on pc.id=p.category
-        where u.company_id=#{companyId} and te.project_id is not null  and pc.name not in ('报价项目','售后报价项目','研发项目')
+        where u.company_id=#{companyId} and te.project_id is not null  and pc.name not in ('报价项目','售后报价项目','研发项目','运维项目')
         <if test="projectId!=null">
             and p.id=#{projectId}
         </if>