chb 7 years ago
parent
commit
de29f48934

+ 3 - 0
ccb_fund_trusteeship/src/main/java/com/fuzamei/dao/CapitalTransferDao.java

@@ -75,5 +75,8 @@ public class CapitalTransferDao {
 	public void updateTUserAccountBalance(Map<String, Object> map) {//划转资金后  修改账户里的余额
 		capitalTransferMapper.updateTUserAccountBalance(map);
 	}
+	public void updateAccountMoney(Map<String, Object> map) {//划转资金后要把账户表里的账户钱修改(加起来)
+		capitalTransferMapper.updateAccountMoney(map);
+	}
 	
 }

+ 8 - 0
ccb_fund_trusteeship/src/main/java/com/fuzamei/entity/UserDetail.java

@@ -18,6 +18,14 @@ public class UserDetail {
 	//private String drawing_account;		    //划款账户       这字段删掉了挪到账户表里了
 	private Long create_time;					//账户创建时间
 	private Long update_time;					//账户修改时间
+	private Double money;//账户信息表 钱
+	
+	public Double getMoney() {
+		return money;
+	}
+	public void setMoney(Double money) {
+		this.money = money;
+	}
 	public Double getAccount_balance() {
 		return account_balance;
 	}

+ 12 - 2
ccb_fund_trusteeship/src/main/java/com/fuzamei/mapper/CapitalTransferMapper.xml

@@ -362,13 +362,23 @@
 		where 
 			fund_id=#{fund_id}  
 	</update>
+	
 	<!--根据user_id 去修改账户余额  -->
 	<update id="updateTUserAccountBalance"><!--用户表的账户余额  要减掉-->
        update  t_user set account_balance=#{account_balance}   where user_id=#{user_id}
 	</update>
+	
 	<!--根据账户表的账户id来修改钱  -->
-	<update id="updateAccountMoney"><!-- 账户表的钱要加起来 -->
+	<update id="updateAccountMoney"><!-- 账户表的账户钱要加起来 -->
        update  account set money=#{money}   where account_id=#{account_id}
 	</update>
-
+	
+	<!-- 查询 根据用户id查询出账户表id值-->
+	<select id="queryAccountIdByUserId" resultType="com.fuzamei.entity.UserAccount">
+		select  account_id  from  user_account where  user_id=#{user_id}
+	</select>
+	
+	
+	
+	
 </mapper>

+ 5 - 0
ccb_fund_trusteeship/src/main/java/com/fuzamei/mapperInterface/CapitalTransferMapper.java

@@ -5,6 +5,7 @@ import java.util.Map;
 
 import com.fuzamei.entity.CapitalTransfer;
 import com.fuzamei.entity.CapitalTransferCheck;
+import com.fuzamei.entity.UserAccount;
 
 public interface CapitalTransferMapper {
 
@@ -28,4 +29,8 @@ public interface CapitalTransferMapper {
     public void insertOperationHistory(Map<String, Object> map);//往操作记录表插入
     public void insertAttachmentInfo(Map<String, Object> map);//往附件表插入
     public void updateTUserAccountBalance(Map<String, Object> map);//划转资金后  修改账户里的余额
+    public void updateAccountMoney(Map<String, Object> map);//划转资金后把 账户表里的账户钱要修改(加起来)
+   
+    public List<UserAccount> queryAccountIdByUserId(Map<String, Object> map);//<!-- 查询 根据用户id查询出账户表id值-->
+    
 }

+ 31 - 20
ccb_fund_trusteeship/src/main/java/com/fuzamei/service/CapitalTransferService.java

@@ -25,8 +25,7 @@ public class CapitalTransferService {
     @Autowired
     private   CapitalTransferDao  capitalTransferDao;
     private static final int ROW_NUM = 10; // 分页每页显示数据的数量
-    @Autowired
-	private AttachmentService attachmentService;
+
     /**  
      *  查询资金划转列表  省分行托管中心指令业务岗
      * @param  
@@ -272,55 +271,67 @@ public class CapitalTransferService {
 	@Transactional
 	public void  insertCapitalTransfer(Map<String, Object> map){
 		long currentTime = System.currentTimeMillis();//获取系统时间
-		int attachmentId = attachmentService.generateAtachmentId();	//去数据库查询有重复的随机数
-		
 		UserDetail userDetail = (UserDetail) map.get("userDetail");//userDetail从controller层获取到
-		List<String> roleList = userDetail.getRole_name();//角色名称
+		//List<String> roleList = userDetail.getRole_name();//角色名称
 		String check_department=userDetail.getOrganization_name();//机构名称
 		String check_person=userDetail.getPerson_name();//处理人员
-		int user_id=(int) map.get("userId");
-		String custodian=(String) map.get("custodian");
+		
+		int user_id=(int) map.get("userId");//???
+		int accoun_id=(int) map.get("accoun_id");//???
+		String custodian=(String) map.get("custodian");//???
 		String fund_name=(String) map.get("fund_name");
 		double sum_of_money=(double) map.get("sum_of_money");
-		
-		
 		String attachment_name=(String) map.get("attachment_name");//附件名称拿上传文件后的名称
+		
 		double  account_balance=userDetail.getAccount_balance();//管理人的账户余额 ????
-		//String  drawing_account= userDetail.getDrawing_account();//划款账户   字段不要了
+		double  money=userDetail.getMoney();//??????????????
 	    double minusResult=account_balance-sum_of_money;//账户余额减去划款金额后的结果???
-		  
+	    double sumMoney=sum_of_money+money;//划款金额+钱??
+	    
+		//插入资金划转表 
 		Map<String, Object> mapToCapitalTransfer=new LinkedHashMap<String, Object>();
 		mapToCapitalTransfer.put("custodian", custodian);//管理人????还是userDetail.getUser_id()
 		mapToCapitalTransfer.put("fund_name", fund_name);//基金名称
 		mapToCapitalTransfer.put("sum_of_money",sum_of_money);//划款金额
+		mapToCapitalTransfer.put("basis_of_payment",attachment_name);//划款金额
+		mapToCapitalTransfer.put("apply_time",currentTime);//申请时间
+		mapToCapitalTransfer.put("handle_time",currentTime);//处理时间
+		mapToCapitalTransfer.put("status_id",StatusId.INSTRUCT_BUSINESS_ACCOUNTING);//管理人发起后   状态改为 待指令业务岗审核
 		capitalTransferDao.insertCapitalTransfer(mapToCapitalTransfer);//插入到划转资金表
 		
-		
+		//资金划转完要产生一条记录 (往资金审核记录表插入信息)
 		Map<String, Object> mapToDaoOfCapitalTransfer=new LinkedHashMap<String, Object>();
 		mapToDaoOfCapitalTransfer.put("check_department", check_department);
 		mapToDaoOfCapitalTransfer.put("check_person",check_person);//处理人员
-		mapToDaoOfCapitalTransfer.put("check_result", "通过");//这里???
+		mapToDaoOfCapitalTransfer.put("check_result", "通过");//这里???
 		mapToDaoOfCapitalTransfer.put("check_opinion", "--");//刚发起没有审核意见
 		mapToDaoOfCapitalTransfer.put("check_time", currentTime); 
-		mapToDaoOfCapitalTransfer.put("relation", StatusId.LAUNCHING);//发起
+		mapToDaoOfCapitalTransfer.put("relation", StatusId.LAUNCHING);//任务类型为发起
 		capitalTransferDao.insertCheckTransfer(mapToDaoOfCapitalTransfer);//管理人发起划款资金后也会产生一条划款记录到划转审核记录表里  且任务状态为发起
 		
+		//修改user表账户余额(减)
 		Map<String, Object> mapToUpdateUserAccountBalance=new LinkedHashMap<String, Object>();
 		mapToUpdateUserAccountBalance.put("user_id",user_id );
-		mapToUpdateUserAccountBalance.put("account_balance", minusResult);
-		capitalTransferDao.updateTUserAccountBalance(mapToUpdateUserAccountBalance);//去用户表去修改账户余额
-		
+		mapToUpdateUserAccountBalance.put("account_balance", minusResult);//待改
+		capitalTransferDao.updateTUserAccountBalance(mapToUpdateUserAccountBalance);//去用户表去修改减掉(账户余额)的钱
 		
+		//修改账户信息表的钱(加)
+		Map<String, Object> mapToUpdateAccountMoney=new LinkedHashMap<String, Object>();
+		mapToUpdateAccountMoney.put("accoun_id", accoun_id);//账户表id
+		mapToUpdateAccountMoney.put("money", sumMoney);//账户表 钱
+		capitalTransferDao.updateAccountMoney(mapToUpdateAccountMoney);//去账户信息表去修改钱   计算加起来
 		
 		
+		//同时往附件表也插入信息
 		Map<String, Object> mapToAttachment=new LinkedHashMap<String, Object>();
-		mapToAttachment.put("attachment_id", attachmentId);             //写的是随机数上面已经去数据库校验过了
-		mapToAttachment.put("attachment_name", attachment_name);        //附件名称
-		mapToAttachment.put("url","");                                  //附件url
+		mapToAttachment.put("attachment_id", map.get("attachmentId"));   //写的是随机数Action已经去数据库校验过了
+		mapToAttachment.put("attachment_name", attachment_name);        //附件名称  写上传文件后的名称
+		mapToAttachment.put("url","");                                  //附件url
 		mapToAttachment.put("upload_person_id",userDetail.getUser_id());//附件上传人id   //写的是管理人id??
 		mapToAttachment.put("create_time", currentTime);                //附件添加时间
 		capitalTransferDao.insertAttachmentInfo(mapToAttachment);//插入到附件表
 		
+		//往操作记录表也插入一条信息
 		Map<String, Object> mapToOperationHistory = new LinkedHashMap<String,Object>();
 		mapToOperationHistory.put("operator_type_id",OperationTypeId.ADMIN_LAUNCHING);	//操作类型id    是管理人发起划款指令?
 		mapToOperationHistory.put("operator_role", check_department);							//创建这个操作的角色根据前面的organizationName决定

+ 13 - 5
ccb_fund_trusteeship/src/main/java/com/fuzamei/web/CapitalTransferAction.java

@@ -30,6 +30,7 @@ import com.fuzamei.entity.BusinessCheck;
 import com.fuzamei.entity.CapitalTransfer;
 import com.fuzamei.entity.CapitalTransferCheck;
 import com.fuzamei.entity.UserDetail;
+import com.fuzamei.service.AttachmentService;
 import com.fuzamei.service.CapitalTransferService;
 import com.fuzamei.service.UserAuthoricationService;
 import com.fuzamei.utils.JSONUtil;
@@ -43,6 +44,8 @@ public class CapitalTransferAction {
 	private CapitalTransferService capitalTransferService;
 	@Autowired
 	private UserAuthoricationService userAuthoricationService;//参数校验  权限授权
+    @Autowired
+	private AttachmentService attachmentService;
 	private static final int ROW_NUM = 10; // 分页每页显示数据的数量
 	private static final String SP = File.separator;//分隔符
 	 /**  
@@ -211,6 +214,7 @@ public class CapitalTransferAction {
 	@PostMapping(value="/adminInsertCapitalTransfer")
 	@ResponseBody
 	public Map<String,Object> adminInsertCapitalTransfer(@RequestParam("userId") Object uId,
+			                                        @RequestParam("account_id") int accounId,//账号id  待————————>应该通过userid查询账户id???
 			                                        @RequestParam("file") MultipartFile file,
 			                                        @RequestParam("custodian") String Custodian , //管理人??
 			                                        @RequestParam("fund_name") String fName,      //基金名称
@@ -225,7 +229,7 @@ public class CapitalTransferAction {
 		 if(file.isEmpty()){
 			throw new RuntimeException("上传文件不能为空");
 		 }
-	 	 String path = request.getServletContext().getRealPath("")+SP+"content"; //------待定
+	 	 String path = request.getServletContext().getRealPath("")+SP+"content"; //------路径待定在改动
 	  	 //MultipartFile自带的解析方法  
        	 String fileName = file.getOriginalFilename();  
          String pathFile=path+"/"+fileName;
@@ -236,17 +240,21 @@ public class CapitalTransferAction {
            	dir.mkdirs();  
        	 }  
        	 file.transferTo(newfile);	
-       	 //Integer user_id=ValidationUtil.checkAndAssignInt(uId);	
+     	 int attachmentId = attachmentService.generateAtachmentId();	//去数据库查询有重复的随机数
+       	 Integer accoun_id=ValidationUtil.checkAndAssignInt(accounId);	
        	 String  custodian=ValidationUtil.checkBlankAndAssignString(Custodian);//检验前端传来的(管理人)参数??
 		 String fund_name =ValidationUtil.checkBlankAndAssignString(fName);//校验前端传来的(基金名称)参数
 		 Double sum_of_money=ValidationUtil.checkAndAssignDouble(Sum_of_money);  //校验前端传来的(划款金额)参数
 		 
 	     Map<String, Object> mapToService = new LinkedHashMap<String, Object>();
 	     mapToService.put("userDetail",userDetail );
+	     mapToService.put("attachmentId",attachmentId );//附件id的随机数
 	     mapToService.put("custodian",custodian );//管理ren ??????
-	     mapToService.put("fund_name", fund_name);
-	     mapToService.put("sum_of_money", sum_of_money);
-	     mapToService.put("attachment_name", fileName);
+	     mapToService.put("fund_name", fund_name);//基金名称
+	     mapToService.put("sum_of_money", sum_of_money);//划款金额
+	     mapToService.put("attachment_name", fileName);//附件名称
+	     mapToService.put("accoun_id", accoun_id);//账户id???
+	     
 	     
 	     //mapToService.put("", value);
 		    return JSONUtil.getJsonMap(200, true, HintMSG.OPERATION_SUCCESS, null);