|
@@ -9,6 +9,7 @@ import java.util.*;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
@@ -18,6 +19,7 @@ import com.fs.common.core.domain.R;
|
|
|
import com.fs.common.core.domain.ResponseResult;
|
|
|
import com.fs.common.core.domain.entity.SysDictData;
|
|
|
import com.fs.common.core.page.TableDataInfo;
|
|
|
+import com.fs.common.param.LoginMaWxParam;
|
|
|
import com.fs.common.utils.DateUtils;
|
|
|
import com.fs.common.utils.DictUtils;
|
|
|
import com.fs.common.utils.ParseUtils;
|
|
@@ -48,12 +50,14 @@ import com.fs.his.param.FsUserAddIntegralTemplateParam;
|
|
|
import com.fs.his.param.FsUserParam;
|
|
|
import com.fs.his.service.IFsUserIntegralLogsService;
|
|
|
import com.fs.his.service.IFsUserProjectTagService;
|
|
|
+import com.fs.his.service.IFsUserWxService;
|
|
|
import com.fs.his.vo.FsUserVO;
|
|
|
import com.fs.his.vo.FsUserExportListVO;
|
|
|
import com.fs.his.vo.FsUserFollowDoctorVO;
|
|
|
import com.fs.his.vo.UserVo;
|
|
|
import com.fs.hisStore.domain.FsStoreOrderScrm;
|
|
|
import com.fs.hisStore.domain.FsUserBillScrm;
|
|
|
+import com.fs.hisStore.domain.FsUserScrm;
|
|
|
import com.fs.hisStore.enums.BillDetailEnum;
|
|
|
import com.fs.hisStore.mapper.FsStoreOrderScrmMapper;
|
|
|
import com.fs.hisStore.service.IFsUserBillScrmService;
|
|
@@ -162,6 +166,9 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
@Autowired
|
|
|
private FsStoreOrderScrmMapper storeOrderMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IFsUserWxService fsUserWxService;
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 查询用户
|
|
@@ -1235,4 +1242,32 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
return fsUserMapper.selectFsUserListLimit(fsUser);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void handleFsUserWx(FsUser user, LoginMaWxParam param, WxMaJscode2SessionResult session) {
|
|
|
+ if (user == null) return;
|
|
|
+ // 尝试更新
|
|
|
+ boolean updated = fsUserWxService.lambdaUpdate()
|
|
|
+ .eq(FsUserWx::getFsUserId, user.getUserId())
|
|
|
+ .eq(FsUserWx::getAppId, param.getAppId())
|
|
|
+ .eq(FsUserWx::getOpenId, session.getOpenid())
|
|
|
+ .set(FsUserWx::getCompanyId, param.getCompanyId())
|
|
|
+ .set(FsUserWx::getUnionId, session.getUnionid() == null ? "" : session.getUnionid())
|
|
|
+ .set(FsUserWx::getUpdateTime, new Date())
|
|
|
+ .update();
|
|
|
+
|
|
|
+ // 如果更新失败(记录不存在),则插入
|
|
|
+ if (!updated) {
|
|
|
+ FsUserWx fsUserWx = new FsUserWx();
|
|
|
+ fsUserWx.setType(1);
|
|
|
+ fsUserWx.setFsUserId(user.getUserId());
|
|
|
+ fsUserWx.setCompanyId(param.getCompanyId());
|
|
|
+ fsUserWx.setAppId(param.getAppId());
|
|
|
+ fsUserWx.setOpenId(session.getOpenid());
|
|
|
+ fsUserWx.setUnionId(session.getUnionid() == null ? "" : session.getUnionid());
|
|
|
+ fsUserWx.setCreateTime(new Date());
|
|
|
+ fsUserWx.setUpdateTime(new Date());
|
|
|
+ fsUserWxService.save(fsUserWx);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|