Browse Source

事务管理--最终修改bug提交

1021934019@qq.com 4 years ago
parent
commit
cfe790ef80

+ 2 - 0
blade-service-api/blade-project-api/src/main/java/org/springblade/project/entity/ServiceProject.java

@@ -105,5 +105,7 @@ public class ServiceProject extends TenantEntity implements Serializable {
 	//是否允许删除主表, 默认可以
 	@TableField(exist = false)
 	private Boolean allowDelete=true;
+    //结算备注
+	private String settlementRemark;
 
 }

+ 3 - 0
blade-service-api/blade-project-api/src/main/java/org/springblade/project/entity/ServiceProjectItem.java

@@ -111,6 +111,9 @@ public class ServiceProjectItem extends TenantEntity implements Serializable {
 	@TableField(exist = false)
 	private String strStatus;
 
+	@TableField(exist = false)
+	private String userName;
+
 
 
 }

+ 6 - 0
blade-service/blade-project/pom.xml

@@ -61,6 +61,12 @@
             <version>2.8.2.RELEASE</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-user</artifactId>
+            <version>2.8.2.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
         <!--<dependency>
             <groupId>org.springblade</groupId>
             <artifactId>blade-starter-transaction</artifactId>

+ 36 - 15
blade-service/blade-project/src/main/java/org/springblade/project/controller/ProjectController.java

@@ -15,17 +15,14 @@ import org.springblade.project.entity.ServiceProjectItem;
 import org.springblade.project.service.ServiceProjectFilesService;
 import org.springblade.project.service.ServiceProjectItemService;
 import org.springblade.project.service.ServiceProjectService;
+import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 import springfox.documentation.annotations.ApiIgnore;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-
-import javax.servlet.ServletException;
 import java.util.Arrays;
-import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -41,8 +38,8 @@ public class ProjectController {
 	private ServiceProjectItemService serviceProjectItemService;
 	@Autowired
 	private ServiceProjectFilesService serviceProjectFilesService;
-
-
+    @Autowired
+	private IUserClient userClient;
 	@GetMapping("/list")
 	public R<IPage<?>> list(@RequestParam(name = "current", defaultValue = "1") Integer current,
 							@RequestParam(name = "size", defaultValue = "10") Integer size,
@@ -90,7 +87,7 @@ public class ProjectController {
 			records.forEach(e->{
 
 				lambdaQueryWrapper
-					.eq(ServiceProjectItem::getStatus,2)
+					.ge(ServiceProjectItem::getStatus,2)
 					.eq(ServiceProjectItem::getIsDeleted,0)
 					.eq(ServiceProjectItem::getPId,e.getId());
 				List<ServiceProjectItem> itemList = serviceProjectItemService.list(lambdaQueryWrapper);
@@ -135,9 +132,15 @@ public class ProjectController {
 
 		if(!CollectionUtils.isEmpty(serviceProjectItems))
 		{
+			String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成"};
 			serviceProjectItems.forEach(e->{
-				String[] str = new String[]{"录入","已请核","审核中","审核通过","完工","结算"};
+
 				e.setStrStatus(str[e.getStatus()]);
+				R<User> r = userClient.userInfoById(e.getUserid());
+				if(r.getData()!=null)
+				{
+                 e.setUserName(r.getData().getRealName());
+				}
 			});
 			serviceProject.setItemList(serviceProjectItems);
 		}
@@ -151,28 +154,46 @@ public class ProjectController {
 
 	@PostMapping("updateItemStatus")
 	public R check(@RequestParam(name = "id", required = true) Long itemId
-		          ,@RequestParam(name = "status", required = true) int status)
+		          ,@RequestParam(name = "status", required = true) int status
+		          ,@RequestParam(name = "accountName", required = false) String accountName
+		          ,@RequestParam(name = "accountBank", required = false) String accountBank
+		          ,@RequestParam(name = "accountNo", required = false) String accountNo
+	               )
 	{
-		    serviceProjectService.updateItemStatus(itemId,status);
+		    serviceProjectService.updateItemStatus(itemId,status,accountName,accountBank, accountNo);
 			return R.success("操作完成");
 	}
 
 	@GetMapping("item/list")
     public R<?> itemList( @RequestParam(name = "current", defaultValue = "1") Integer current,
 						  @RequestParam(name = "size", defaultValue = "10") Integer size,
-						  @RequestParam(name = "pName",  required = false) String pName,
-						  @RequestParam(name = "reminderDay",  required = false) String reminderDay,
-						  @RequestParam(name = "status",  required = true) int status
+						  @RequestParam(name = "pname",  required = false) String pName,
+						  @RequestParam(name = "beginTime",  required = false) String beginTime,
+						  @RequestParam(name = "actualDate",  required = false) String actualDate,
+						  @RequestParam(name = "deptid",  required = false) Long deptid,
+						  @RequestParam(name = "status",  required = true) String status
 						 )
 	{
+
+		  List<String> listStatus=Arrays.asList(status.split(","));
+
 		  LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper=new LambdaQueryWrapper<>();
 		  itemLambdaQueryWrapper
 			  .like(StringUtils.isNotBlank(pName),ServiceProjectItem::getPName,pName)
-			  .like(StringUtils.isNotBlank(reminderDay),ServiceProjectItem::getReminderDay,reminderDay)
+			.	apply(StringUtils.isNotBlank(beginTime),"date_format(begin_time,'%Y-%m-%d') = '"+beginTime+"'")
+			.	apply(StringUtils.isNotBlank(actualDate),"date_format(actual_date,'%Y-%m-%d') = '"+actualDate+"'")
 			  .eq(ServiceProjectItem::getUserid,SecureUtil.getUserId())
-			  .eq(ServiceProjectItem::getStatus,status);
+			  .eq(deptid!=null,ServiceProjectItem::getDeptid,deptid)
+			  .in(ServiceProjectItem::getStatus,listStatus);
 		  Page<ServiceProjectItem> page=new Page<>(current,size);
 		  IPage<ServiceProjectItem> iPage = serviceProjectItemService.page(page, itemLambdaQueryWrapper);
+		  if(!CollectionUtils.isEmpty(iPage.getRecords()))
+		  {
+			  String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成"};
+			  iPage.getRecords().forEach(e->{
+				  e.setStrStatus(str[e.getStatus()]);
+			  });
+		  }
 		  return R.data(iPage);
 	}
 

+ 1 - 1
blade-service/blade-project/src/main/java/org/springblade/project/service/ServiceProjectService.java

@@ -25,6 +25,6 @@ public interface ServiceProjectService extends BaseService<ServiceProject>
 
     R getSysNo();
 
-    void updateItemStatus(Long itemId,int status);
+    void updateItemStatus(Long itemId,int status,String accountName,String accountBank,String accountNo);
 
 }

+ 47 - 3
blade-service/blade-project/src/main/java/org/springblade/project/service/impl/ServiceProjectServiceImpl.java

@@ -9,7 +9,9 @@ import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.project.entity.ServiceProject;
+import org.springblade.project.entity.ServiceProjectFiles;
 import org.springblade.project.entity.ServiceProjectItem;
+import org.springblade.project.mapper.ServiceProjectFilesMapper;
 import org.springblade.project.mapper.ServiceProjectItemMapper;
 import org.springblade.project.mapper.ServiceProjectMapper;
 import org.springblade.project.service.ServiceProjectItemService;
@@ -36,6 +38,8 @@ public class ServiceProjectServiceImpl extends BaseServiceImpl<ServiceProjectMap
    @Autowired
    private ServiceProjectItemMapper serviceProjectItemMapper;
    @Autowired
+   private ServiceProjectFilesMapper serviceProjectFilesMapper;
+   @Autowired
    private ISerialClient serialClient;//生成系统编号
 
 	@Override
@@ -43,7 +47,9 @@ public class ServiceProjectServiceImpl extends BaseServiceImpl<ServiceProjectMap
 	public void modify(ServiceProject serviceProject)
 	{
 		List<ServiceProjectItem> itemList = serviceProject.getItemList();
-      //新增操作,不用考虑子项问题,子项必然是新增
+
+		List<ServiceProjectFiles> filesList = serviceProject.getFilesList();
+		//新增操作,不用考虑子项问题,子项必然是新增
       if(serviceProject.getId()==null)
       {
 		  BigDecimal debitAmount = serviceProject.getDebitAmount();//合同总金额
@@ -67,6 +73,19 @@ public class ServiceProjectServiceImpl extends BaseServiceImpl<ServiceProjectMap
                 serviceProjectItemMapper.insert(e);
 			  });
 		  }
+
+		  if(!CollectionUtils.isEmpty(filesList))
+		  {
+			  filesList.forEach(e->{
+				  e.setPId(serviceProject.getId());
+				  e.setCreateTime(new Date());
+				  e.setCreateUser(SecureUtil.getUserId());
+				  e.setCreateUserName(SecureUtil.getUser().getRoleName());
+				  serviceProjectFilesMapper.insert(e);
+			  });
+		  }
+
+
 	  }
 	  //修改操作,则需要判断子项是否为新增、修改、删除
       else
@@ -105,6 +124,29 @@ public class ServiceProjectServiceImpl extends BaseServiceImpl<ServiceProjectMap
 				  }
 			  });
 
+			  //判断文件列表新增或者修改操作
+			  filesList.forEach(ls->{
+				  //修改
+				  if(null!=ls.getId())
+				  {
+					  ls.setUpdateUser(SecureUtil.getUserId());
+					  ls.setUpdateTime(new Date());
+					  ls.setUpdateUserName(SecureUtil.getUser().getRoleName());
+					  serviceProjectFilesMapper.updateById(ls);
+				  }
+				  //新增
+				  else
+				  {
+					  ls.setPId(serviceProject.getId());
+					  ls.setCreateTime(new Date());
+					  ls.setCreateUser(SecureUtil.getUserId());
+					  String deptId = SecureUtil.getDeptId();
+					  ls.setCreateDept(StringUtils.isNoneBlank(deptId)?Long.valueOf(deptId):-1);
+					  ls.setCreateUserName(SecureUtil.getUser().getRoleName());
+					  serviceProjectFilesMapper.insert(ls);
+				  }
+			  });
+
 
 			  //查询原来的子项集合 与 传入的子项进行比较, 判断是否删除
 			  if(!CollectionUtils.isEmpty(originServiceProjectItems))
@@ -171,10 +213,12 @@ public class ServiceProjectServiceImpl extends BaseServiceImpl<ServiceProjectMap
 	}
 
 	@Override
-	public void updateItemStatus(Long itemId, int status)
+	public void updateItemStatus(Long itemId, int status,String accountName,String accountBank,String accountNo)
 	{
 		ServiceProjectItem serviceProjectItem = serviceProjectItemMapper.selectById(itemId);
-
+		serviceProjectItem.setAccountBank(accountBank);
+		serviceProjectItem.setAccountName(accountName);
+		serviceProjectItem.setAccountNo(accountNo);
 		if(serviceProjectItem==null)
 		{
 			throw new RuntimeException("请确认传入id正确");

+ 1 - 0
blade-service/pom.xml

@@ -27,6 +27,7 @@
         <module>blade-stock</module>
         <module>blade-mocha-item</module>
         <module>trade-purchase</module>
+        <module>blade-project</module>
     </modules>
 
     <dependencies>