| | |
| | | * 积分 |
| | | */ |
| | | private Integer integral; |
| | | /** |
| | | * 备注 |
| | | */ |
| | | private String remark; |
| | | } |
| | |
| | | userIntegralChanges.setAppUserId(vo.getAppUserId()); |
| | | userIntegralChanges.setOldIntegral(appUser.getIntegral()); |
| | | userIntegralChanges.setType(vo.getType()); |
| | | |
| | | appUser.setIntegral(appUser.getIntegral() + vo.getIntegral()); |
| | | tauMapper.updateById(appUser); |
| | | userIntegralChanges.setNewIntegral(appUser.getIntegral()); |
| | | userIntegralChanges.setInsertTime(new Date()); |
| | | userIntegralChanges.setCategory(1); |
| | | userIntegralChanges.setRemark(vo.getRemark()); |
| | | this.save(userIntegralChanges); |
| | | } |
| | | |
| | |
| | | import com.dsh.activity.feignclient.account.StudentClient; |
| | | import com.dsh.activity.feignclient.account.model.AppUserByNameAndPhoneDTO; |
| | | import com.dsh.activity.feignclient.account.model.TCityManager; |
| | | import com.dsh.activity.feignclient.account.model.TStoreStaff; |
| | | import com.dsh.activity.feignclient.model.CouponExamineListSearch; |
| | | import com.dsh.activity.feignclient.model.CouponListOfSearch; |
| | | import com.dsh.activity.feignclient.model.TAppUser; |
| | |
| | | import com.dsh.activity.feignclient.other.StoreClient; |
| | | import com.dsh.activity.feignclient.other.model.CityDataAndProvinceDataVo; |
| | | import com.dsh.activity.feignclient.other.model.Store; |
| | | import com.dsh.activity.feignclient.other.model.StoreInfoDto; |
| | | import com.dsh.activity.feignclient.other.model.TOperatorCity; |
| | | import com.dsh.activity.model.CouponListVo; |
| | | import com.dsh.activity.model.CouponRecordQuery; |
| | |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | |
| | | @Resource |
| | | private StoreClient stoClient; |
| | | |
| | | |
| | | |
| | | @Resource |
| | |
| | | couponInfo.put("id",coupon.getId()); |
| | | couponInfo.put("auditStatus",coupon.getAuditStatus()); |
| | | couponInfo.put("publisherType",coupon.getPublisherType()); |
| | | if (coupon.getPublisherType() == 1){ |
| | | TCityManager byId = citClient.getById(coupon.getCityManagerId()); |
| | | couponInfo.put("province",byId.getProvince()); |
| | | couponInfo.put("city",byId.getCity()); |
| | | } |
| | | |
| | | couponInfo.put("name",coupon.getName()); |
| | | couponInfo.put("type",coupon.getType()); |
| | | JSONObject jsonObject = JSON.parseObject(coupon.getContent()); |
| | |
| | | List<CouponStore> list = couStoreService.list(new LambdaQueryWrapper<CouponStore>() |
| | | .eq(CouponStore::getCouponId,coupon.getId())); |
| | | if (list.size() > 0){ |
| | | // 获取门店ids |
| | | List<Integer> collect = list.stream().map(CouponStore::getStoreId).collect(Collectors.toList()); |
| | | List<Store> storeList = stoClient.queryStoreByIds(collect); |
| | | if (storeList.size() > 0){ |
| | | for (Store store : storeList) { |
| | | TStoreStaff list1 = stoStaClient.baseInfo(store.getStoreStaffId()); |
| | | |
| | | StoreInfoDto storeInfo = stoClient.getStoreInfo(store.getStoreStaffId()); |
| | | HashMap<String, Object> stringObjectHashMap = new HashMap<>(); |
| | | stringObjectHashMap.put("procity",store.getProvince()+store.getCity()); |
| | | stringObjectHashMap.put("storeAccount",list1.getName()+"+"+list1.getPhone()); |
| | | stringObjectHashMap.put("storeAccount",storeInfo.getInfo()); |
| | | stringObjectHashMap.put("storeName",store.getName()); |
| | | maps.add(stringObjectHashMap); |
| | | } |
| | |
| | | |
| | | import com.dsh.activity.feignclient.other.model.Store; |
| | | import com.dsh.activity.feignclient.other.model.StoreDetailOfCourse; |
| | | import com.dsh.activity.feignclient.other.model.StoreInfoDto; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | |
| | | @FeignClient(value = "mb-cloud-other") |
| | | public interface StoreClient { |
| | | |
| | | /** |
| | | * 获取根据门店id 获取店长信息 |
| | | */ |
| | | @RequestMapping(value = "/getStoreInfo") |
| | | public StoreInfoDto getStoreInfo(@RequestBody Integer id); |
| | | |
| | | @PostMapping("/base/protocol/storeDetail/courseOfSto") |
| | | StoreDetailOfCourse getCourseOfStore(@RequestParam("storeId") Integer storeId); |
New file |
| | |
| | | package com.dsh.activity.feignclient.other.model; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class StoreInfoDto { |
| | | String info; |
| | | } |
| | |
| | | <if test="state != null"> |
| | | and `state` = #{state} |
| | | </if> |
| | | |
| | | and auditStatus = 2 |
| | | order by insertTime desc |
| | | </select> |
| | | <select id="queryCouponListOfSearch1" resultType="java.util.Map"> |
| | |
| | | import com.dsh.course.feignClient.account.model.*; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.ResponseBody; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | @PostMapping("/userIntegralChanges/list") |
| | | Page<UserIntegral> list(IntegralListQuery integralListQuery); |
| | | |
| | | /** |
| | | * 保存用户积分变动记录 |
| | | * @param vo |
| | | */ |
| | | @PostMapping("/userIntegralChanges/saveUserIntegralChanges") |
| | | public void saveUserIntegralChanges(@RequestBody SaveUserIntegralChangesVo vo); |
| | | } |
New file |
| | |
| | | package com.dsh.course.feignClient.account.model; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author zhibing.pu |
| | | * @date 2023/7/12 11:26 |
| | | */ |
| | | @Data |
| | | public class SaveUserIntegralChangesVo { |
| | | /** |
| | | * 用户id |
| | | */ |
| | | private Integer appUserId; |
| | | /** |
| | | * 积分类型(1=赠送积分,2=兑换商品,3=完成课后练习,4=观看教学视频) |
| | | */ |
| | | private Integer type; |
| | | /** |
| | | * 积分 |
| | | */ |
| | | private Integer integral; |
| | | /** |
| | | * 备注 |
| | | */ |
| | | private String remark; |
| | | } |
| | |
| | | package com.dsh.guns.modular.system.api; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.alipay.api.AlipayApiException; |
| | | import com.alipay.api.AlipayClient; |
| | |
| | | // 回查商户认证单审核状态 查询除了审核通过以外的认证单 |
| | | List<OperatorAuth> list = operatorAuthService.list(new QueryWrapper<OperatorAuth>().ne("orderStatus", "AUDIT_PASS")); |
| | | AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","2021004123692417", |
| | | "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDe188UHA8lR8CjG6KeKIYjYw6UfpJOl7nyklpiZKfbJ1q70D+LEdEZbWrzZ2eSwqeD+7B/ZV8Hyum9vrU6FPbgc6q/vy73ji0o1AhQP0GPPtcnNaAP9IppwchTSEjvODKMHSotB64LSBuFLgtAGSAJ6nHPXlEcyV5Y4Dev/E1JD3b9N2uTXilW5zZ2o1IxwXBIxuU0Tw7wHXUjcaXbpGuQUGIq54fzsbqP4TjSVoa8S41FhbtP9n61NulUtGFRfyHxpo/kj4cx3o6P4s+PBo/T2DlaMkpI6cRx0rfjL1ZkXrDJLYcCokUKxiJ/trrGjdYFUz6r2TGe1kAnjehkW+TTAgMBAAECggEAWMKtAN2MStUhrdY8F7Mcesvh6tPfgt58elpBFh/xnCE4ysZQCRy3pOEoUHtHjfVqs+90hcni6D+yipmDpfbjvtNTl7yXAJPo+PI7vXr0qhHlsQBzGOfWmflNyZ5pLp+7woN7YSRF9shp7cpBQO7BDDIN0wNGW6j5o3zrsXVVc1uu5ndD0kxV6XM3P43EY8mMdRXT9UmF0WTomLQ7JxhlY23fgYmS7USZUKkN9BkKAbwnxdskDnFT94infup4kbWoPr5DFeMESPdsE+tNbbUGCKzqYzgoTpf5jOKThyt1/HQWCuYLbui3GDJ704eEPypFDgl8Mh+y8UOBiuKfjB4xgQKBgQD+v0cO6rU7ce7R3y+4LgZoEGfEfjvWGH+BEowDk0UFIWxfPlwgTGl5/OZHO7Y55QQzNsxxl8jUIXxVicyhYoKI0+uOeJ7bKmi08hb6BAQ1eTRaukRtMBbCo/FvBbE14vt2dnpidvCPv/KC0sQG1J+vUxUzSt94URvxNVBcRbsXCQKBgQDf8F1QZ4pUYP9KSCmUWbzpotAr+m84Q7Oqf4zc70p8rU8nGQSnNrQQWddqwF/UEiNniDj+n0FVwiEMslRWSqPYixyqI3dHuVxhi/4wdoIewCHq3MkcqHksl9y67Bhl8HXMGmg79IxiCsqj7oEF8aGJjAyEZm3d2roz0QNPQCaX+wKBgQCazX+Px/7jpcN7k4W7BXTtLfLwy8juvCpXM/8TeR27FWl2oz12fxilgZIp/VYp7kpUGNu5t4PZrJOSo09PTr6GCUmeZRwbkLTaKDbgLSqlmAbBj2lfdJaQJvHjBnF+jnVCspKCXUaoA/uJlix6/iAfeXxrk/cidR9mv4Aa4mDjiQKBgG2+SKyfoT3KrzFC/gVymM7SeDwlJZ4oJ4M1sN2Q8yr4b+LUMuCTQVkF/jiVgCDYprsVGgFGIGmbkkC7n/MN7w+u1ORYLxtaLnird21ellPlinmjq3c85O1CmuyLyUUju0bD5jMDnExrx3Tg7B/yk1xp4rR70fm4OCoukvWilYdDAoGBAK3Y77tqbno+D6W95fb8xb4xUUd1tEWgSY6CgjaqTRzbJ38cGuo92gBjKhDGLwaztcCw4yKPhEOum7nBGKKyxFfs8Z4vsG+m19JSdBfHf3PLModZwnjrRpatAnjTUW0DbPz+sfAwMgLnTCpElcSRQwjmioVAucCyd2FlMmqP5xB4","json","GBK", |
| | | "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCq1V7akWZ/V9mr8NGW2CihIbY93M7M33LpVM5y63qEuN7yqyJV197WT6c7uHBcttY6cJLawXLihgC8KF6ZzdXWbm4n4RiigxIaz9LbSVBjYplkNgG2rg7W7dB8wrrqcwBQU0n+pFX3KWJkHRXDugqE21VCGgzySKQBkhiztmTI/z039PdWp2RTGLiL/OuwVrPjQv3He2orYIZgADWid0mtZXCEFosDkaQDTEqCfuDEuMouEiaIk/lw0ZWxiR1Fvfr82nO0r94lM/CC1wNRif2+2ESR+YystsWQPm16eRgS3wAQz2cOTP4L5VNKNzcUAgxTQK3Bj8GvqrYUUlcC7VCTAgMBAAECggEAPKmYDTUkmIOxoATb6BzKEK3P8Re/t7CBNaoPxW8pCog7YyCyCJmnX6LZV7Oe8s1aNVZUT6nyCc5b5HTRYvxcutBr/W1JOiwg+bRiw8u86A3TOmqTITOdwWShbCwaA7binaN12x6wCByB+9r4J5Cgu5zHIbnubvqsgoJGk0ppb5XbyYkikOAXPHli4PUe4GOorSuhRdq3XlGWiMwh4yt48kF4vP+2ByuDOYQU6LjGs0wn/5LpN+ReLdXTab65Cz7WYTDrTndyIrhFg7cyT5m2gtiJuEgIJ45uaaeGNIecV6JSnRsEv4YD4m+I58yhyyvw9zd0Z5qP04QNjy7OK2UeQQKBgQD/EJpaVv0RR83Z6Hp2YVrPoiMz279U5bgkBbcxgr9GR2YYE3rrHqBdqch1Uitu+g6LIC+SDtib7yG9C7EqPHB3fsfEw8NtL54gy3OFbCcH3lqFxgtrCpQ2SIXQjd8932TpzcMdD6jzyUoSraT+lgkf2MgjqFiMbNVg50lGDyWujQKBgQCrdbXTttuazdwU0pdRFCuTz42iIJSZtHFUPvmbrBy7LFQ8NTN76dqLM1RUH7gJukPc4+Ax+DfpDgHZ4nQ2KSk9FweLqKSf10kojibKpc3nkgDRtUtSTar8fZn9VKTuXK1Ho0LUkjDlHjlEwUuf/Ef+IdjzXDJ2UPWHp2YzxvNDnwKBgBWGtjAnpUX/FF1upF83Si251lS7GAO3O3o2zUYtba0lu3UOt9H+DLS67oMQQ0AjdHTDa6BdBmTqoqNMyE/zN96t4Xg2uViOqz7DTOWWwhiE6IjftPj8tJN8PWbjglK7ds3QosXiG3UvqMO4yfL+gJiieAmiXI7FZKDABEwYXSrFAoGASXVe91vKbmJwPgOTjMsleGhd9+4ZfFjQjRWF/2oXzSFK3Zi1fAtO9ICDSp9kS9afqI2AyifcXF8B8AWTYHj2EBRDyVPxZAHqeBOfDwdGVkY5T59qq9JWxWJSjTSsjOrr2ltaEJSpmh/+zTQ7YEnH1ltOBcWkYQiCiSHxKZG9O2UCgYBfBTkjktzv81SnW47d0qRwmiXrcyObmXTe5fIW9e6KaB0SnzcVvoCmm7TTk+Bm4WqNmfb5k8U6J22vdxB1TPlRksnY+VZDM0Grv/xUII9G8oVQ4+NiE5XvQ7+nc5EBJ12of6GxE7/yXZiDld62q2sFZgrFzhvvHV+IADsu/VdIEw==","json","GBK", |
| | | "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCzq4BIE4gMdEXxIAAUbiMpSytkzp+LVLVsBtji87rFGfWUcnrr3NKftaw0WtRu+36d1nDVOWW4CmgsOPyj1GOFoTcJOR/BqyIriwyLxpuMS8qgOqGJZXi+W4Nw2AJL6iMVwY2eI8F1G10gACK2I9TNJRzHh3tMTA6ItysbGoekRDtn6Xrkh5V6cyHQjLw0Q6MJK/68XT6/LWzarDEEYrSnIevOydMY32ptAgm5fp/h08M2khCmI6CuMWKmc87dPpd2krGVTALqprAQvB74AIqO+5DE0fN4LoitOYXAtWDCEF4kHN0hQUygIEGCwtMgEVzkf92VLlCX35YtDhWd1yQIDAQAB","RSA2"); |
| | | for (OperatorAuth operatorAuth : list) { |
| | | // 第三步:查询申请单审核结果 |
| | |
| | | operatorAuth.setOrderStatus(order_status); |
| | | operatorAuth.setOrderNo(orderNo); |
| | | // 失败原因 |
| | | JSONObject verify_list = sign.getJSONObject("verify_list"); |
| | | JSONArray verify_list = sign.getJSONArray("verify_list"); |
| | | StringBuilder reason = new StringBuilder(""); |
| | | // 失败原因 |
| | | if (verify_list!=null){ |
| | | String fail_reason = verify_list.getString("fail_reason"); |
| | | operatorAuth.setRefuseReason(fail_reason); |
| | | for (int i = 0; i < verify_list.size(); i++) { |
| | | JSONObject jsonObject = verify_list.getJSONObject(i); |
| | | String fail_reason = jsonObject.getString("fail_reason"); |
| | | reason.append(fail_reason+","); |
| | | } |
| | | String res = reason.toString(); |
| | | String substring = res.substring(0, res.length() - 1); |
| | | operatorAuth.setRefuseReason(substring); |
| | | operatorAuthService.updateById(operatorAuth); |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | //第二步:提交申请单 |
| | | AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","2021004123692417", |
| | | "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDe188UHA8lR8CjG6KeKIYjYw6UfpJOl7nyklpiZKfbJ1q70D+LEdEZbWrzZ2eSwqeD+7B/ZV8Hyum9vrU6FPbgc6q/vy73ji0o1AhQP0GPPtcnNaAP9IppwchTSEjvODKMHSotB64LSBuFLgtAGSAJ6nHPXlEcyV5Y4Dev/E1JD3b9N2uTXilW5zZ2o1IxwXBIxuU0Tw7wHXUjcaXbpGuQUGIq54fzsbqP4TjSVoa8S41FhbtP9n61NulUtGFRfyHxpo/kj4cx3o6P4s+PBo/T2DlaMkpI6cRx0rfjL1ZkXrDJLYcCokUKxiJ/trrGjdYFUz6r2TGe1kAnjehkW+TTAgMBAAECggEAWMKtAN2MStUhrdY8F7Mcesvh6tPfgt58elpBFh/xnCE4ysZQCRy3pOEoUHtHjfVqs+90hcni6D+yipmDpfbjvtNTl7yXAJPo+PI7vXr0qhHlsQBzGOfWmflNyZ5pLp+7woN7YSRF9shp7cpBQO7BDDIN0wNGW6j5o3zrsXVVc1uu5ndD0kxV6XM3P43EY8mMdRXT9UmF0WTomLQ7JxhlY23fgYmS7USZUKkN9BkKAbwnxdskDnFT94infup4kbWoPr5DFeMESPdsE+tNbbUGCKzqYzgoTpf5jOKThyt1/HQWCuYLbui3GDJ704eEPypFDgl8Mh+y8UOBiuKfjB4xgQKBgQD+v0cO6rU7ce7R3y+4LgZoEGfEfjvWGH+BEowDk0UFIWxfPlwgTGl5/OZHO7Y55QQzNsxxl8jUIXxVicyhYoKI0+uOeJ7bKmi08hb6BAQ1eTRaukRtMBbCo/FvBbE14vt2dnpidvCPv/KC0sQG1J+vUxUzSt94URvxNVBcRbsXCQKBgQDf8F1QZ4pUYP9KSCmUWbzpotAr+m84Q7Oqf4zc70p8rU8nGQSnNrQQWddqwF/UEiNniDj+n0FVwiEMslRWSqPYixyqI3dHuVxhi/4wdoIewCHq3MkcqHksl9y67Bhl8HXMGmg79IxiCsqj7oEF8aGJjAyEZm3d2roz0QNPQCaX+wKBgQCazX+Px/7jpcN7k4W7BXTtLfLwy8juvCpXM/8TeR27FWl2oz12fxilgZIp/VYp7kpUGNu5t4PZrJOSo09PTr6GCUmeZRwbkLTaKDbgLSqlmAbBj2lfdJaQJvHjBnF+jnVCspKCXUaoA/uJlix6/iAfeXxrk/cidR9mv4Aa4mDjiQKBgG2+SKyfoT3KrzFC/gVymM7SeDwlJZ4oJ4M1sN2Q8yr4b+LUMuCTQVkF/jiVgCDYprsVGgFGIGmbkkC7n/MN7w+u1ORYLxtaLnird21ellPlinmjq3c85O1CmuyLyUUju0bD5jMDnExrx3Tg7B/yk1xp4rR70fm4OCoukvWilYdDAoGBAK3Y77tqbno+D6W95fb8xb4xUUd1tEWgSY6CgjaqTRzbJ38cGuo92gBjKhDGLwaztcCw4yKPhEOum7nBGKKyxFfs8Z4vsG+m19JSdBfHf3PLModZwnjrRpatAnjTUW0DbPz+sfAwMgLnTCpElcSRQwjmioVAucCyd2FlMmqP5xB4","json","GBK", |
| | | "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCq1V7akWZ/V9mr8NGW2CihIbY93M7M33LpVM5y63qEuN7yqyJV197WT6c7uHBcttY6cJLawXLihgC8KF6ZzdXWbm4n4RiigxIaz9LbSVBjYplkNgG2rg7W7dB8wrrqcwBQU0n+pFX3KWJkHRXDugqE21VCGgzySKQBkhiztmTI/z039PdWp2RTGLiL/OuwVrPjQv3He2orYIZgADWid0mtZXCEFosDkaQDTEqCfuDEuMouEiaIk/lw0ZWxiR1Fvfr82nO0r94lM/CC1wNRif2+2ESR+YystsWQPm16eRgS3wAQz2cOTP4L5VNKNzcUAgxTQK3Bj8GvqrYUUlcC7VCTAgMBAAECggEAPKmYDTUkmIOxoATb6BzKEK3P8Re/t7CBNaoPxW8pCog7YyCyCJmnX6LZV7Oe8s1aNVZUT6nyCc5b5HTRYvxcutBr/W1JOiwg+bRiw8u86A3TOmqTITOdwWShbCwaA7binaN12x6wCByB+9r4J5Cgu5zHIbnubvqsgoJGk0ppb5XbyYkikOAXPHli4PUe4GOorSuhRdq3XlGWiMwh4yt48kF4vP+2ByuDOYQU6LjGs0wn/5LpN+ReLdXTab65Cz7WYTDrTndyIrhFg7cyT5m2gtiJuEgIJ45uaaeGNIecV6JSnRsEv4YD4m+I58yhyyvw9zd0Z5qP04QNjy7OK2UeQQKBgQD/EJpaVv0RR83Z6Hp2YVrPoiMz279U5bgkBbcxgr9GR2YYE3rrHqBdqch1Uitu+g6LIC+SDtib7yG9C7EqPHB3fsfEw8NtL54gy3OFbCcH3lqFxgtrCpQ2SIXQjd8932TpzcMdD6jzyUoSraT+lgkf2MgjqFiMbNVg50lGDyWujQKBgQCrdbXTttuazdwU0pdRFCuTz42iIJSZtHFUPvmbrBy7LFQ8NTN76dqLM1RUH7gJukPc4+Ax+DfpDgHZ4nQ2KSk9FweLqKSf10kojibKpc3nkgDRtUtSTar8fZn9VKTuXK1Ho0LUkjDlHjlEwUuf/Ef+IdjzXDJ2UPWHp2YzxvNDnwKBgBWGtjAnpUX/FF1upF83Si251lS7GAO3O3o2zUYtba0lu3UOt9H+DLS67oMQQ0AjdHTDa6BdBmTqoqNMyE/zN96t4Xg2uViOqz7DTOWWwhiE6IjftPj8tJN8PWbjglK7ds3QosXiG3UvqMO4yfL+gJiieAmiXI7FZKDABEwYXSrFAoGASXVe91vKbmJwPgOTjMsleGhd9+4ZfFjQjRWF/2oXzSFK3Zi1fAtO9ICDSp9kS9afqI2AyifcXF8B8AWTYHj2EBRDyVPxZAHqeBOfDwdGVkY5T59qq9JWxWJSjTSsjOrr2ltaEJSpmh/+zTQ7YEnH1ltOBcWkYQiCiSHxKZG9O2UCgYBfBTkjktzv81SnW47d0qRwmiXrcyObmXTe5fIW9e6KaB0SnzcVvoCmm7TTk+Bm4WqNmfb5k8U6J22vdxB1TPlRksnY+VZDM0Grv/xUII9G8oVQ4+NiE5XvQ7+nc5EBJ12of6GxE7/yXZiDld62q2sFZgrFzhvvHV+IADsu/VdIEw==","json","GBK", |
| | | "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCzq4BIE4gMdEXxIAAUbiMpSytkzp+LVLVsBtji87rFGfWUcnrr3NKftaw0WtRu+36d1nDVOWW4CmgsOPyj1GOFoTcJOR/BqyIriwyLxpuMS8qgOqGJZXi+W4Nw2AJL6iMVwY2eI8F1G10gACK2I9TNJRzHh3tMTA6ItysbGoekRDtn6Xrkh5V6cyHQjLw0Q6MJK/68XT6/LWzarDEEYrSnIevOydMY32ptAgm5fp/h08M2khCmI6CuMWKmc87dPpd2krGVTALqprAQvB74AIqO+5DE0fN4LoitOYXAtWDCEF4kHN0hQUygIEGCwtMgEVzkf92VLlCX35YtDhWd1yQIDAQAB","RSA2"); |
| | | AlipayMerchantIndirectAuthorderCreateRequest request = new AlipayMerchantIndirectAuthorderCreateRequest(); |
| | | String param = "{" + |
| | |
| | | return SUCCESS_TIP; |
| | | } |
| | | public static Object uploadImg(String img){ |
| | | String privateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCSsmylIHe0j0pRQrB9p5ljryk9Qg2Z/JgIh+gtZES1TDo35YVw24aRRt7pkY7oHIZqpMRmSsWND1t63LVuNlpq532LG0iEJVJS53GzpRoHDD3iD01GmUoNjkCL36NCrbY0hTDDw7GZnYuJ8194Sss7OEoi7Mghg/XUreX4awwpWngTepCF7zs0S4YJQWyGY4JI6ooGraW23siBVY5MUI9XXLL6UKIExUfKe7zRihs8SrTHNnXtDT6EKYYo8P6M90Xuk173QsK2Xguk1FQ5Blh2ts7UvZVjP+WoQwDvrnqruve5kzDD9gwnAYUvhY66mtlxeub9nf5LLTtCliXeUZpNAgMBAAECggEAaPShSM9e9d9jM5p8PZqw4yJKZhqhMqAHgmsCUZ+gjPn52U4s198oez5ydDgBP85Q2XIDVpB+oPrw34mTgUQAEuaG6wTdMDannMscjYQ9h/dZOyjph+5ajjJNugWKgEVazF7S0e1sXtTaJhvrHVyd5UPTvwMb+Oa59q1okQC91cNa2vJzXiC7dfqWXZW/otmmOpcIcCN8dVDG3YhAuc5ZiT78Ca8x9GHWfw7cw1FRewRZlp/YnD2fJeWEesfvGCV36zCksrJrZz5MFMdf1Qh6+tHxK+E5sPNGdbooviTRnNWrsgyS9NcXFSQItOZQHsbLVID/Bs0kxkYPzbsfX1vRXQKBgQDsBDNZxpmSZJZ/4HfCOfHytWAkH/GHE3GOYH4TdHKLXfxRCinU23OtdrU2Sy8tBZvaajDKkWvMkjWT2w+56+z+xTprTf2PL/LS9zWCc8LPKbif6NfnwaOE8pIBrvkBskGKwbIE2fFVT0B4hNsR80TbPxvvAfCKjUj67qrTXSal+wKBgQCfHiuq/gLuSD2fuplzCwu0Rm/wr56bUpxhq9WNGaPOybR6EPq/wTKp0ow+f9uSuTm2NZhi/TWTXHOizy9vcZChRpj03a7NYwUOw36zvW7SHuF0Uhsp8TrZTyCj1XdhdLyJ9JMyL2DTRpGtLUR01ZSrdXPax7/Xu+OHubijqRD2VwKBgFqCveKm7AwdMS43OhYtPKE0d3tDGNARX9IXJSJ23Nqfn3zApgwwYKtcQ+BfcucUKJHZeX6lyC56v7tFHkHRvWBy6JVwIlZAMCJBla7CkCn8OQZyOCJzuy7oC6BDptDEuKfq4kdEAW4S54mQgabfoT9nc2H0X3fy+NLqpm5KYeDzAoGAYerlIILUNuKJ2aOxDpS7jSLTfB/20MqTpZ9i+UPQBE8oGv4b8Kjpjowc9dEkxDPsCe8Nac08jQSVvJkXLdOLF1QkiHtrOMU4tY8kh2OJsRCD2Vs1kCf8+QGyql+Q6Y43AAZcFsQFJ78Dorh6qhNNO/45X2cQ7aeYK0vlDgHaiF0CgYA4k9Q1tc8sU67TgT9cmMM6hG7/Rf3cU3PIdYuojs1EIG+1BJ7TlEiNAHoPtphlGFFeDP3SVnf59RfYH+BbLiz1JX9p/KFKRRkoXtfd6bySVWHvj4x2WiVpKFvHxhxc3LRubx0ryLGR/tpUJzxp+9luanU/WgSRFKiEZJZqFjjDzw=="; |
| | | String privateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCq1V7akWZ/V9mr8NGW2CihIbY93M7M33LpVM5y63qEuN7yqyJV197WT6c7uHBcttY6cJLawXLihgC8KF6ZzdXWbm4n4RiigxIaz9LbSVBjYplkNgG2rg7W7dB8wrrqcwBQU0n+pFX3KWJkHRXDugqE21VCGgzySKQBkhiztmTI/z039PdWp2RTGLiL/OuwVrPjQv3He2orYIZgADWid0mtZXCEFosDkaQDTEqCfuDEuMouEiaIk/lw0ZWxiR1Fvfr82nO0r94lM/CC1wNRif2+2ESR+YystsWQPm16eRgS3wAQz2cOTP4L5VNKNzcUAgxTQK3Bj8GvqrYUUlcC7VCTAgMBAAECggEAPKmYDTUkmIOxoATb6BzKEK3P8Re/t7CBNaoPxW8pCog7YyCyCJmnX6LZV7Oe8s1aNVZUT6nyCc5b5HTRYvxcutBr/W1JOiwg+bRiw8u86A3TOmqTITOdwWShbCwaA7binaN12x6wCByB+9r4J5Cgu5zHIbnubvqsgoJGk0ppb5XbyYkikOAXPHli4PUe4GOorSuhRdq3XlGWiMwh4yt48kF4vP+2ByuDOYQU6LjGs0wn/5LpN+ReLdXTab65Cz7WYTDrTndyIrhFg7cyT5m2gtiJuEgIJ45uaaeGNIecV6JSnRsEv4YD4m+I58yhyyvw9zd0Z5qP04QNjy7OK2UeQQKBgQD/EJpaVv0RR83Z6Hp2YVrPoiMz279U5bgkBbcxgr9GR2YYE3rrHqBdqch1Uitu+g6LIC+SDtib7yG9C7EqPHB3fsfEw8NtL54gy3OFbCcH3lqFxgtrCpQ2SIXQjd8932TpzcMdD6jzyUoSraT+lgkf2MgjqFiMbNVg50lGDyWujQKBgQCrdbXTttuazdwU0pdRFCuTz42iIJSZtHFUPvmbrBy7LFQ8NTN76dqLM1RUH7gJukPc4+Ax+DfpDgHZ4nQ2KSk9FweLqKSf10kojibKpc3nkgDRtUtSTar8fZn9VKTuXK1Ho0LUkjDlHjlEwUuf/Ef+IdjzXDJ2UPWHp2YzxvNDnwKBgBWGtjAnpUX/FF1upF83Si251lS7GAO3O3o2zUYtba0lu3UOt9H+DLS67oMQQ0AjdHTDa6BdBmTqoqNMyE/zN96t4Xg2uViOqz7DTOWWwhiE6IjftPj8tJN8PWbjglK7ds3QosXiG3UvqMO4yfL+gJiieAmiXI7FZKDABEwYXSrFAoGASXVe91vKbmJwPgOTjMsleGhd9+4ZfFjQjRWF/2oXzSFK3Zi1fAtO9ICDSp9kS9afqI2AyifcXF8B8AWTYHj2EBRDyVPxZAHqeBOfDwdGVkY5T59qq9JWxWJSjTSsjOrr2ltaEJSpmh/+zTQ7YEnH1ltOBcWkYQiCiSHxKZG9O2UCgYBfBTkjktzv81SnW47d0qRwmiXrcyObmXTe5fIW9e6KaB0SnzcVvoCmm7TTk+Bm4WqNmfb5k8U6J22vdxB1TPlRksnY+VZDM0Grv/xUII9G8oVQ4+NiE5XvQ7+nc5EBJ12of6GxE7/yXZiDld62q2sFZgrFzhvvHV+IADsu/VdIEw=="; |
| | | String alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCzq4BIE4gMdEXxIAAUbiMpSytkzp+LVLVsBtji87rFGfWUcnrr3NKftaw0WtRu+36d1nDVOWW4CmgsOPyj1GOFoTcJOR/BqyIriwyLxpuMS8qgOqGJZXi+W4Nw2AJL6iMVwY2eI8F1G10gACK2I9TNJRzHh3tMTA6ItysbGoekRDtn6Xrkh5V6cyHQjLw0Q6MJK/68XT6/LWzarDEEYrSnIevOydMY32ptAgm5fp/h08M2khCmI6CuMWKmc87dPpd2krGVTALqprAQvB74AIqO+5DE0fN4LoitOYXAtWDCEF4kHN0hQUygIEGCwtMgEVzkf92VLlCX35YtDhWd1yQIDAQAB"; |
| | | AlipayConfig alipayConfig = new AlipayConfig(); |
| | | alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do"); |
| | |
| | | @ResponseBody |
| | | public Object changeState(@RequestBody CoachChangeStateVO vo){ |
| | | operatorService.changeState(vo); |
| | | List<Integer> ids = vo.getIds(); |
| | | // 将运营商账号也冻结 |
| | | List<TOperator> list = operatorService.list(new QueryWrapper<TOperator>() |
| | | .in("id",ids)); |
| | | // 用户ids |
| | | List<Integer> collect = list.stream().map(TOperator::getUserId).collect(Collectors.toList()); |
| | | for (Integer integer : collect) { |
| | | User user = new User(); |
| | | user.setId(integer); |
| | | user.setStatus(vo.getState()); |
| | | userService.updateById(user); |
| | | } |
| | | return ResultUtil.success(); |
| | | } |
| | | /** |
| | |
| | | import com.dsh.guns.modular.system.model.dto.SelectDto; |
| | | import com.dsh.guns.modular.system.service.ICityService; |
| | | import com.dsh.guns.modular.system.service.IStoreService; |
| | | import com.dsh.guns.modular.system.service.IUserService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.Model; |
| | |
| | | |
| | | @Resource |
| | | private UserMapper userMapper; |
| | | @Autowired |
| | | private IUserService userService; |
| | | |
| | | |
| | | /** |
| | |
| | | @ResponseBody |
| | | public Object pwd(Integer id) { |
| | | try { |
| | | userMapper.selectOne(new LambdaQueryWrapper<User>().eq(User::getObjectId,id).eq(User::getObjectType,2)); |
| | | // 查询门店 获取门店店长id |
| | | TStore store = storeService.getById(id); |
| | | User user = userService.getById(store.getStoreStaffId()); |
| | | user.setPassword(SecureUtil.md5("a123456")); |
| | | userService.updateById(user); |
| | | userMapper.selectOne(new LambdaQueryWrapper<User>() |
| | | .eq(User::getObjectId,id) |
| | | .eq(User::getObjectType,2)); |
| | | return SUCCESS_TIP; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | } |
| | | } |
| | | if (coupon.getPublisherType() == 2) { |
| | | CityManager cityManager = cmgrClient.queryCityManagerById(tStore.getCityManagerId()); |
| | | if (ToolUtil.isNotEmpty(cityManager)) { |
| | | tStore.setProvince(tStore.getProvince() + tStore.getCity()); |
| | | tStore.setPhone(cityManager.getName() + "-" + cityManager.getPhone()); |
| | | } |
| | | User byId = userService.getById(tStore.getStoreStaffId()); |
| | | |
| | | tStore.setProvince(tStore.getProvince() + tStore.getCity()); |
| | | tStore.setPhone(byId.getName() + "-" + byId.getPhone()); |
| | | |
| | | } |
| | | } |
| | | } |
| | |
| | | import com.dsh.guns.core.common.constant.factory.PageFactory; |
| | | import com.dsh.guns.core.exception.GunsException; |
| | | import com.dsh.guns.core.util.ToolUtil; |
| | | import com.dsh.guns.modular.system.model.User; |
| | | import com.dsh.guns.modular.system.service.IUserService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.Model; |
| | | import org.springframework.web.bind.annotation.PathVariable; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.ResponseBody; |
| | | |
| | |
| | | |
| | | @Resource |
| | | private CouponClient client; |
| | | @Autowired |
| | | private IUserService userService; |
| | | |
| | | /** |
| | | * 优惠券审核列表页 |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 获取根据门店id 获取店长信息 |
| | | */ |
| | | @RequestMapping(value = "/getStoreInfo") |
| | | @ResponseBody |
| | | public String getStoreInfo(@RequestBody Integer id) { |
| | | User byId = userService.getById(id); |
| | | return byId.getName() + "-" + byId.getAccount(); |
| | | } |
| | | /** |
| | | * 获取 优惠券审核列表 |
| | | */ |
| | |
| | | * 获取 优惠券审核详情 |
| | | */ |
| | | @RequestMapping(value = "/couponOfDetail/{id}") |
| | | @ResponseBody |
| | | public String detailOfCoupon(@PathVariable Integer id, Model model){ |
| | | Map<String, Object> stringObjectMap = client.queryCouponExamineDetail(id); |
| | | model.addAttribute(stringObjectMap); |
| | |
| | | * 获取 优惠券审核详情 |
| | | */ |
| | | @RequestMapping(value = "/couponExaminePage/{id}") |
| | | @ResponseBody |
| | | public String couponExaminePage(@PathVariable Integer id, Model model){ |
| | | model.addAttribute("id",id); |
| | | return PREFIX + "TCouponExamine.html"; |
| | |
| | | |
| | | @RequestMapping(value = "/examine") |
| | | @ResponseBody |
| | | public Object examine(Integer couponOfId, Integer state, String remark) { |
| | | Coupon coupon = client.queryCouponById(couponOfId); |
| | | public Object examine(Integer id, Integer state, String remark) { |
| | | Coupon coupon = client.queryCouponById(id); |
| | | try { |
| | | if (state == 1) { |
| | | if (state == 2) { |
| | | coupon.setAuditStatus(2); |
| | | } |
| | | if (state == 2) { |
| | | if (state == 3) { |
| | | coupon.setAuditStatus(3); |
| | | coupon.setAuditRemark(remark); |
| | | } |
| | |
| | | import cn.hutool.crypto.SecureUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.dsh.course.feignClient.account.AppUserClient; |
| | | import com.dsh.course.feignClient.account.CityClient; |
| | | import com.dsh.course.feignClient.account.IntegralClient; |
| | | import com.dsh.course.feignClient.account.model.*; |
| | |
| | | import com.dsh.guns.modular.system.service.IStoreService; |
| | | import com.dsh.guns.modular.system.service.ITNoticeService; |
| | | import com.dsh.guns.modular.system.service.StoreConfigService; |
| | | import com.sun.org.apache.bcel.internal.generic.NEW; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.Model; |
| | |
| | | |
| | | @Autowired |
| | | private IntegralClient client; |
| | | @Autowired |
| | | private AppUserClient appUserClient; |
| | | |
| | | /** |
| | | * 跳转到车辆管理首页 |
| | |
| | | |
| | | @RequestMapping(value = "/add") |
| | | @ResponseBody |
| | | public Object list(String name,String text,Integer sort) { |
| | | try { |
| | | TNotice tNotice = new TNotice(); |
| | | tNotice.setContent(text); |
| | | tNotice.setInsertTime(new Date()); |
| | | tNotice.setContent(text); |
| | | tNotice.setName(name); |
| | | tNotice.setSort(sort); |
| | | tNotice.setState(1); |
| | | return new SuccessTip<>(); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ERROR; |
| | | public Object list(String phone,Integer integral,String remark) { |
| | | SaveUserIntegralChangesVo vo = new SaveUserIntegralChangesVo(); |
| | | TAppUser appUserByPhone = appUserClient.getAppUserByPhone(phone); |
| | | if (appUserByPhone == null){ |
| | | // 这个手机号 不是用户 |
| | | return 5001; |
| | | }else{ |
| | | vo.setAppUserId(appUserByPhone.getId()); |
| | | vo.setIntegral(integral); |
| | | vo.setRemark(remark); |
| | | vo.setType(1); |
| | | client.saveUserIntegralChanges(vo); |
| | | } |
| | | |
| | | return new SuccessTip<>(); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private ITSiteService siteService; |
| | | @Autowired |
| | | private IUserService userService; |
| | | |
| | | |
| | | /** |
| | |
| | | } |
| | | storeService.save(tStore); |
| | | user.setObjectId(tStore.getId()); |
| | | |
| | | userService.updateById(user); |
| | | |
| | | |
| | | |
| | |
| | | @ResponseBody |
| | | public Object freeze(Integer id) { |
| | | try { |
| | | TStore byId = storeService.getById(id); |
| | | byId.setState(2); |
| | | storeService.updateById(byId); |
| | | // 查询门店 获取门店店长id |
| | | TStore store = storeService.getById(id); |
| | | // 冻结 |
| | | store.setState(2); |
| | | storeService.updateById(store); |
| | | Integer storeStaffId = store.getStoreStaffId(); |
| | | User user = userService.getById(storeStaffId); |
| | | user.setStatus(2); |
| | | userService.updateById(user); |
| | | return SUCCESS_TIP; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | @ResponseBody |
| | | public Object unfreeze(Integer id) { |
| | | try { |
| | | TStore byId = storeService.getById(id); |
| | | byId.setState(1); |
| | | storeService.updateById(byId); |
| | | // 查询门店 获取门店店长id |
| | | TStore store = storeService.getById(id); |
| | | // 解冻 |
| | | store.setState(1); |
| | | storeService.updateById(store); |
| | | Integer storeStaffId = store.getStoreStaffId(); |
| | | User user = userService.getById(storeStaffId); |
| | | user.setStatus(1); |
| | | userService.updateById(user); |
| | | return SUCCESS_TIP; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | for (BenefitsVideos benefitsVideos : benefitVideoById) { |
| | | for (TQueryBenefitsVideosVO courseByCourseId : courseByCourseIds) { |
| | | if (benefitsVideos.getCourseId().equals(courseByCourseId.getId())){ |
| | | courseByCourseId.setId(benefitsVideos.getId()); |
| | | courseByCourseId.setIntegral(benefitsVideos.getIntegral()); |
| | | courseByCourseId.setBenefitsVideosId(benefitsVideos.getId()); |
| | | courseByCourseId.setState(benefitsVideos.getState()); |
| | |
| | | model.addAttribute("tips", "账号密码错误"); |
| | | return "/login.html"; |
| | | } |
| | | if (user.getStatus() == 2){ |
| | | model.addAttribute("tips", "该账号已被冻结"); |
| | | return "/login.html"; |
| | | }else if (user.getStatus() == 3){ |
| | | model.addAttribute("tips", "该账号不存在"); |
| | | return "/login.html"; |
| | | } |
| | | |
| | | |
| | | GetTokenRequest tokenRequest = new GetTokenRequest(); |
| | |
| | | <div style="display: flex;align-items: center;justify-content: center;height: 100%"> |
| | | |
| | | |
| | | <img src="${ctxPath}/img/index4.png" style="width: 300px;height: 400px;z-index: 1000;border-radius: 10px"> |
| | | <div style="position: relative;left: -20px; max-width: 300px;min-height: 300px;background: white;border-radius: 8px;box-sizing: border-box;padding: 0 30px 0 50px;display: flex;align-items: center;justify-content: center;"> |
| | | <div style="max-height: 100%"> |
| | | <h3 style="color: black;"><img src="${ctxPath}/img/logo.png" width="30px" height="30px"/> Play pai site</h3> |
| | | <h1 style="color: white">玩湃生活管理后台</h1> |
| | | <div style="position: relative;margin-left:200px;left: -20px; max-width: 300px;min-height: 300px;background: white;border-radius: 8px;box-sizing: border-box;padding: 0 30px 0 50px;display: flex;align-items: center;justify-content: center;"> |
| | | <div style="max-height: 100%" > |
| | | <img style="margin-left: 44px" src="${ctxPath}/img/logo.png" width="100px" height="120px"/> |
| | | <br/> |
| | | <h4 style="color: red;">${tips!}</h4> |
| | | <form class="m-t" role="form" action="${ctxPath}/login" method="post"> |
| | | <div class="item"> |
| | | <img src="${ctxPath}/img/account.png" /> |
| | | <input class="itemInput" type="text" name="username" id="username" placeholder="请输入账号" required="" value="admin"> |
| | | <input class="itemInput" type="text" name="username" id="username" placeholder="请输入账号" required="" value=""> |
| | | </div> |
| | | <div class="item"> |
| | | <img src="${ctxPath}/img/password.png" /> |
| | | <input class="itemInput" type="password" name="password" id="password" placeholder="请输入密码" required="" value="123456"> |
| | | <input class="itemInput" type="password" name="password" id="password" placeholder="请输入密码" required="" value=""> |
| | | </div> |
| | | <!--<div class="item">--> |
| | | <!--<img src="${ctxPath}/img/password.png" />--> |
| | |
| | | <#button name="删除" icon="fa-remove" clickFun="TQuestion.delete()" space="true"/> |
| | | <#button name="上架" icon="fa-check" clickFun="TQuestion.onShelf()" space="true"/> |
| | | <#button name="下架" icon="fa-remove" clickFun="TQuestion.offShelf()" space="true"/> |
| | | <#button name="查看详情" icon="fa-search" clickFun="TQuestion.getInfo()" space="true"/> |
| | | <#button name="查看详情" icon="fa-search" clickFun="TQuestion.openChange()" space="true"/> |
| | | <#button name="视频详情" icon="fa-search" clickFun="TQuestion.getInfo()" space="true"/> |
| | | </div> |
| | | <#table id="TQuestionTable"/> |
| | |
| | | <div class="col-lg-4 col-sm-12"> |
| | | <#NameCon id="name" name="课包名称"/> |
| | | </div> |
| | | <div class="col-lg-4 col-sm-12"> |
| | | <#SelectCon id="status" name="课包状态"> |
| | | <option value="">全部</option> |
| | | <option value="1">未开始</option> |
| | | <option value="2">售卖中</option> |
| | | <option value="3">已结束</option> |
| | | </#SelectCon> |
| | | </div> |
| | | |
| | | <div class="col-lg-4 col-sm-12" ${objectType == 3 ? 'style="display: none;"' : ''}> |
| | | <#SelectCon id="state" name="售卖状态"> |
| | | <option value="">全部</option> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="row btn-group-m-t"> |
| | | <div class="col-sm-10"> |
| | | <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.editSubmit()"/> |
| | | <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="CoursePackageInfo.close()"/> |
| | | <div class="col-sm-10" style="text-align: center"> |
| | | <#button btnCss="danger" name="关闭" id="cancel" icon="fa-eraser" clickFun="CoursePackageInfo.close()"/> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <#button name="编辑" icon="fa-edit" clickFun="TSite.openInfo()" space="true"/> |
| | | <#button name="冻结" icon="fa-remove" clickFun="TSite.offShelf()" space="true"/> |
| | | <#button name="解冻" icon="fa-check" clickFun="TSite.onShelf()" space="true"/> |
| | | <#button name="绑定" icon="fa-check" clickFun="TSite.auth()" space="true"/> |
| | | |
| | | <#button name="重置密码" icon="fa-search" clickFun="TSite.reload()" space="true"/> |
| | | </div> |
| | |
| | | <div class="col-lg-6" style=""> |
| | | <div class="form-group"> |
| | | <label class="col-sm-4 control-label" > |
| | | 主题类型:<input checked type="radio" name="bodyType" value="1" onclick="updateHalf(1)">个人 |
| | | <input type="radio" name="bodyType" value="2" onclick="updateHalf(2)">企业 |
| | | 主题类型:<input checked type="radio" name="bodyType" value="IND_BIZ" onclick="updateHalf(1)">个人 |
| | | <input type="radio" name="bodyType" value="ENTERPRISE" onclick="updateHalf(2)">企业 |
| | | </label> |
| | | </div> |
| | | <div class="form-group" > |
| | |
| | | <div class="form-group" > |
| | | <label class="col-sm-3 control-label">所属运营商:</label> |
| | | <div class="col-sm-9"> |
| | | <select class="form-control" id="account" name="account" onchange="TCarInfoDlg.oneChange1(this)"> |
| | | <select class="form-control" id="account" name="account" onchange="TCarInfoDlg.oneChange3(this)"> |
| | | <option value="">选择运营商</option> |
| | | @for(i in yysList){ |
| | | <option value="${i.id}">${i.name}</option> |
| | | @} |
| | | </select> |
| | | <input type="checkbox" value="0" name="pt" onchange="TCarInfoDlg.oneChangeYys(this)">平台</input> |
| | | <input type="checkbox" value="0" name="pt" id="pt" onchange="TCarInfoDlg.oneChangeYys(this)">平台</input> |
| | | </div> |
| | | </div> |
| | | <div class="form-group" id="provinceCode"> |
| | | <label class="col-sm-3 control-label">所在省:</label> |
| | | <div class="col-sm-9"> |
| | | <select class="form-control" id="pCode" name="pCode" onchange="TCarInfoDlg.oneChange(this)"> |
| | | <select class="form-control" id="pCode" name="pCode" onchange="TCarInfoDlg.oneChange9(this)"> |
| | | |
| | | </select> |
| | | </div> |
| | |
| | | <input class="col-sm-1 control-label" name="exchangeMethod" onclick="exchangeMethod2()" type="radio" |
| | | value="2" style="margin-left: 5%;margin-top: 10px;width: 13px;height: 13px"/> |
| | | <label class="col-sm-1" style="width: 20%;margin-top: 7px">现金+积分</label> |
| | | <input class="col-sm-1 control-label" name="exchangeMethod" onclick="exchangeMethod3()" type="radio" |
| | | value="3" style="margin-left: 5%;margin-top: 10px;width: 13px;height: 13px"/> |
| | | <label class="col-sm-1" style="width: 9%;margin-top: 7px">现金</label> |
| | | |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <div class="row"> |
| | | <div class="col-sm-5"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*优惠券类型: </label> |
| | | <div class="col-sm-9"> |
| | | <label style="color: #c0a16b">满减券:满</label> |
| | | <input value="${num1}"> |
| | | <label style="color: red">元,减</label> |
| | | <input value="${num2}"> |
| | | <label style="color: red">元</label> |
| | | </div> |
| | | <div class="col-sm-9"> |
| | | <label style="color: #c0a16b">代金券:可抵</label> |
| | | <input value="${num1}"> |
| | | <label style="color: red">元</label> |
| | | </div> |
| | | <div class="col-sm-9"> |
| | | <label style="color: #c0a16b">优惠券:满</label> |
| | | <input value="${num1}"> |
| | | <label style="color: red">元,减</label> |
| | | <input> |
| | | <label style="color: red">元</label> |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="ibox float-e-margins"> |
| | | <div class="ibox-content"> |
| | | <div class="form-horizontal" id="carInfoForm"> |
| | | <div class="row" id="app1"> |
| | | <#input id="phone" name="用户手机号" type="text" /> |
| | | <#input id="number" name="赠送数量" type="text" /> |
| | | |
| | | |
| | | |
| | | <div class="row"> |
| | | <div class="col-sm-6"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*用户手机号: </label> |
| | | <div class="col-sm-9"> |
| | | <input class="form-control" id="phone" name="name" autocomplete="off" |
| | | placeholder="请输入用户手机号"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="row"> |
| | | <div class="col-sm-6"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*赠送数量: </label> |
| | | <div class="col-sm-9"> |
| | | <input class="form-control" |
| | | id="number" name="name" autocomplete="off" placeholder="请输入赠送数量"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="row"> |
| | | <div class="col-sm-6"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">备注: </label> |
| | | <div class="col-sm-9"> |
| | | <textarea type="checkbox" id="remark" style="margin-left: 1%;width: 75%;height: 120px" |
| | | placeholder="请输入备注"></textarea> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="row btn-group-m-t"> |
| | | <div class="col-sm-10 col-sm-offset-5"> |
| | | <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TCarInfoDlg.addSubmit()"/> |
| | | <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TCarInfoDlg.close()"/> |
| | | <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="TSite.addSubmit()"/> |
| | | <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="TSite.close()"/> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <#input id="name" name="*门店名称" type="text"/> |
| | | <#input id="phone" name="*联系电话" type="text"/> |
| | | <#input id="name" name="*门店名称" placeholder= "请输入门店名称" type="text"/> |
| | | <#input id="phone" name="*联系电话" placeholder= "请输入联系电话" type="text"/> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*门店地址:</label> |
| | | <div class="col-sm-9"> |
| | | <input class="form-control" id="address" name="address" type="text" onchange="TCarInfoDlg.searchByStationName(this,1)"> |
| | | <input class="form-control" placeholder= "请输入门店地址" id="address" name="address" type="text" onchange="TCarInfoDlg.searchByStationName(this,1)"> |
| | | </div> |
| | | </div> |
| | | <div class="col-sm-10" style="margin-left: 397px;width: 70%;" > |
| | |
| | | <div hidden id="longitude" value="104.0559716796875"></div> |
| | | <div hidden id="latitude" value="30.585671929253472"></div> |
| | | |
| | | <#input id="time" name="营业时间" type="text"/> |
| | | <#input id="time" name="*营业时间" placeholder= "请选择营业时间" type="text"/> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*门店介绍:</label> |
| | | <div class="col-sm-9"> |
| | | <textarea id="introduce" style="width: 617px; height: 180px;"></textarea> |
| | | <textarea placeholder= "请输入门店介绍" id="introduce" style="width: 617px; height: 180px;"></textarea> |
| | | </div> |
| | | </div> |
| | | <#input id="userName" name="*店长姓名" type="text"/> |
| | | <#input id="userPhone" name="*店长手机号" type="text"/> |
| | | <#input id="userName" name="*店长姓名" placeholder= "请输入店长姓名" type="text"/> |
| | | <#input id="userPhone" name="*店长手机号" placeholder= "请输入店长手机号" type="text"/> |
| | | <#avatar id="img" name="*门店封面(推荐像素722*360px)" /> |
| | | <div class="row" id="app1"> |
| | | <div class="col-sm-6" style="width: 100%;margin-left: 103px;"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label" style="width: 15%;margin-left: 5%">*实景图片(请上传不超过五张图片): </label> |
| | | <label class="col-sm-3 control-label" style="width: 15%;margin-left: 5%">*实景图片(推荐像素780*440px,请上传不超过五张图片): </label> |
| | | <div class="col-sm-2" style="width: 100%;margin-left: 11%;margin-top: 1%"> |
| | | <el-upload |
| | | :limit="5" |
| | |
| | | |
| | | </div> |
| | | </div> |
| | | <#input id="ids" name="添加入园闸机" type="text"/> |
| | | <#input id="ids" name="添加入园闸机" placeholder= "请输入入园闸机id,多个用逗号分隔" type="text"/> |
| | | |
| | | </div> |
| | | </div> |
| | |
| | | this.layerIndex = index; |
| | | }; |
| | | /** |
| | | * 商户号认证页面 |
| | | */ |
| | | TSite.auth = function () { |
| | | if (this.check()) { |
| | | var index = layer.open({ |
| | | type: 2, |
| | | title: "商户认证", |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/operator/proportionAuth/' + TSite.seItem.id |
| | | }); |
| | | this.layerIndex = index; |
| | | } |
| | | }; |
| | | /** |
| | | * 分账比例 |
| | | */ |
| | | TSite.proportion = function () { |
| | |
| | | var bodyType = $("input[name='bodyType']:checked").val(); |
| | | var accountType = $("input[name='accountType']:checked").val(); |
| | | var type = $("input[name='type']:checked").val(); |
| | | if (bodyType=="" || null == type){ |
| | | if (bodyType=="" || null == bodyType){ |
| | | Feng.error("请选择主体类型"); |
| | | return; |
| | | } |
| | |
| | | Feng.error("请上传法人身份证背面照"); |
| | | return; |
| | | } |
| | | if ("" == $("#bank").val() || null == $("#bank").val()){ |
| | | Feng.error("请输入开户银行"); |
| | | return; |
| | | } |
| | | if ("" == $("#pCode").val() || null == $("#pCode").val()){ |
| | | Feng.error("请选择开户所在省"); |
| | | return; |
| | | }if ("" == $("#cCode").val() || null == $("#cCode").val()){ |
| | | Feng.error("请选择开户所在市"); |
| | | return; |
| | | }if ("" == $("#backNumber").val() || null == $("#backNumber").val()){ |
| | | Feng.error("请输入银行卡号"); |
| | | return; |
| | | }if ("" == $("#backUserName").val() || null == $("#backUserName").val()){ |
| | | Feng.error("请输入开户名称"); |
| | | return; |
| | | }if ("" == $("#backName").val() || null == $("#backName").val()){ |
| | | Feng.error("请输入开户行全称"); |
| | | return; |
| | | } |
| | | if(type=="ENTERPRISE"){ |
| | | if ("" == $("#bName").val() || null == $("#bName").val()){ |
| | | Feng.error("请输入受益人姓名"); |
| | |
| | | ajax.set("lpIcForeverFlag", 1); |
| | | } |
| | | |
| | | if(bodyType=="2"){ |
| | | if(bodyType=="ENTERPRISE"){ |
| | | if ($("#bEnd").val()==""){ |
| | | console.log("永远") |
| | | ajax.set("beneficiaryEnd","forever"); |
| | |
| | | TCarInfoDlg.oneChange9 = function (e) { |
| | | console.log(111) |
| | | var oneId=$(e).val(); |
| | | var operatorId = $("#operator").val() |
| | | var elementById = document.getElementById("pt"); |
| | | var operatorId; |
| | | if (elementById.checked){ |
| | | operatorId = 0 |
| | | }else{ |
| | | operatorId = $("#account").val() |
| | | } |
| | | |
| | | var ajax = new $ax(Feng.ctxPath + "/tShop/getCityYys", function(data){ |
| | | if(data!=null){ |
| | | if(language==1){ |
| | |
| | | }; |
| | | |
| | | |
| | | |
| | | TCarInfoDlg.oneChange3 = function (e) { |
| | | var operatorId=$(e).val(); |
| | | var ajax = new $ax(Feng.ctxPath + "/tShop/getProvinceYys", function(data){ |
| | | if(data!=null){ |
| | | var content='<option value="">选择市</option>'; |
| | | $.each(data, function(k,v) { |
| | | content += "<option value='"+v.code+"'>"+v.name+"</option>"; |
| | | }); |
| | | $("#pCode").empty().append(content); |
| | | } |
| | | }); |
| | | ajax.set("operatorId",operatorId); |
| | | ajax.start(); |
| | | }; |
| | | TCarInfoDlg.oneChange1 = function (e) { |
| | | console.log(111) |
| | | var oneId=$(e).val(); |
| | |
| | | var ajax = new $ax(Feng.ctxPath + "/tCouponManage/commitData", function (data) { |
| | | Feng.success("添加成功!"); |
| | | window.parent.TCoupon.table.refresh(); |
| | | couponInfoDlg.close(); |
| | | }, function (data) { |
| | | Feng.error("添加失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | |
| | | return [ |
| | | {field: 'selectItem', radio: true}, |
| | | {title: '序号', field: 'id', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '发布省', field: 'province', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '发布城市', field: 'city', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '所属账号', field: 'account', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '优惠券名称', field: 'name', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '适用范围', field: 'useScope', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '适用范围', field: 'useScope', visible: true, align: 'center', valign: 'middle', |
| | | formatter: function (value, row, index) { |
| | | return {1: "全国", 2: "指定城市", 3: "指定门店"}[value] |
| | | } |
| | | }, |
| | | {title: '优惠券类型', field: 'type', visible: true, align: 'center', valign: 'middle', |
| | | formatter: function (value, row, index) { |
| | | return {1: "满减券", 2: "代金券", 3: "体验券"}[value] |
| | | }}, |
| | | {title: '发放方式', field: 'distributionMethod', visible: true, align: 'center', valign: 'middle', |
| | | formatter: function (value, row, index) { |
| | | return {1: "积分购买", 2: "注册赠送", 3: "自动发券"}[value] |
| | | return {1: "积分购买", 2: "注册赠送", 3: "自动发券",4:"课包赠送"}[value] |
| | | }}, |
| | | {title: '有效期', field: 'timeValue', visible: true, align: 'center', valign: 'middle'}, |
| | | {title: '用户人群', field: 'userPopulation', visible: true, align: 'center', valign: 'middle', |
| | |
| | | } |
| | | }; |
| | | |
| | | |
| | | /** |
| | | * 打开审核页面 |
| | | */ |
| | | TCouponExamine.openExamine = function () { |
| | | if (this.check()) { |
| | | var index = layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | area: ['800px', '420px'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/tCouponExamine/couponExaminePage/' + TCouponExamine.seItem.id |
| | | var index = layer.load(1,{ |
| | | type: 1 |
| | | , title: '优惠券审核' |
| | | , area: ['50%', '50%'] |
| | | , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset |
| | | , id: 'layerDemo' //防止重复弹出cge |
| | | , content: '<div class="form-horizontal">' + |
| | | ' <div class="col-sm-11" >' + |
| | | ' <div class="col-sm-11">' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">审核状态:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <input type="radio" name="r1" value="2" checked> 通过 <input type="radio" name="r1" value="3" > 拒绝 '+ |
| | | ' </div>\n' + |
| | | ' </div>\n' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">拒绝理由:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <textarea id="text" style="width: 460px; height: 138px;"></textarea> '+ |
| | | ' </div>\n' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' </div>' + |
| | | '</div>' |
| | | , btn: ['关闭', '保存'] |
| | | , btnAlign: 'c' //按钮居中 |
| | | , shade: 0.5 //不显示遮罩 |
| | | ,load:1 |
| | | , yes: function () { |
| | | layer.closeAll(); |
| | | }, |
| | | btn2:function () { |
| | | |
| | | var id = TCouponExamine.seItem.id; |
| | | let audit = document.querySelector('input[name="r1"]:checked').value; |
| | | let text = $("#text").val() |
| | | if(audit==3){ |
| | | if(text==''){ |
| | | Feng.info("请输入拒绝理由") |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | var ajax = new $ax(Feng.ctxPath + "/tCouponExamine/examine", function (data) { |
| | | if (data.code == 200) { |
| | | Feng.success("操作成功!"); |
| | | window.location.reload(); |
| | | window.parent.layer.closeAll(); |
| | | } else if(data=="repeat"){ |
| | | window.location.reload(); |
| | | window.parent.layer.closeAll(); |
| | | Feng.error("请勿重复操作"); |
| | | }else { |
| | | return Feng.error(data.msg); |
| | | } |
| | | }, function (data) { |
| | | Feng.error("操作失败!") |
| | | window.location.reload(); |
| | | window.parent.layer.closeAll(); |
| | | return Feng.error("操作失败!"); |
| | | }); |
| | | |
| | | ajax.set("id", id); |
| | | ajax.set("state", audit); |
| | | ajax.set("remark", text); |
| | | ajax.start(); |
| | | layer.closeAll(); |
| | | } |
| | | }); |
| | | |
| | | this.layerIndex = index; |
| | | } |
| | | }; |
| | | |
| | | |
| | | |
| | | /** |
| | |
| | | //提交信息 |
| | | var ajax = new $ax(Feng.ctxPath + "/tGoods/add", function(data){ |
| | | if(data=="5001"){ |
| | | Feng.error("改账号已经存在"); |
| | | Feng.error("该账号已经存在"); |
| | | }else if(data=="5003"){ |
| | | console.log("请选择相同运营商门店") |
| | | Feng.info("请选择相同运营商门店"); |
| | |
| | | }else { |
| | | // 如果只有一个城市,则将cts设置为字符串 |
| | | if (cityIds.length === 1) { |
| | | console.log("是1吗?") |
| | | cts = cityIds[0]; |
| | | console.log(cts) |
| | | } else { |
| | | console.log("走下面了") |
| | | cts = cityIds.join(','); |
| | | console.log(cts) |
| | | } |
| | | } |
| | | } |
| | |
| | | table: null, |
| | | layerIndex: -1 |
| | | }; |
| | | |
| | | /** |
| | | * 关闭此对话框 |
| | | */ |
| | | TSite.close = function() { |
| | | parent.layer.close(window.parent.TSite.layerIndex); |
| | | } |
| | | /** |
| | | * 初始化表格的列 |
| | | */ |
| | |
| | | ajax.set("oneId",oneId); |
| | | ajax.start(); |
| | | } |
| | | TSite.addSubmit = function () { |
| | | |
| | | var phonePattern = /^1[3-9]\d{9}$/; |
| | | if (!phonePattern.test($("#phone").val())) { |
| | | Feng.info("请输入合法手机号") |
| | | return ; |
| | | } |
| | | var ajax = new $ax(Feng.ctxPath + "/tIntegral/add", function(data){ |
| | | console.log("看看返回") |
| | | console.log(data) |
| | | if (data == 5001){ |
| | | Feng.error("不存在的手机号!") |
| | | }else{ |
| | | Feng.success("赠送成功!") |
| | | TSite.close(); |
| | | TSite.search(); |
| | | } |
| | | |
| | | }); |
| | | ajax.set("phone",$("#phone").val()); |
| | | ajax.set("integral",$("#number").val()); |
| | | ajax.set("remark",$("#remark").val()); |
| | | ajax.start(); |
| | | |
| | | } |
| | | /** |
| | | * 点击添加跨城站点管理 |
| | | */ |
| | |
| | | Feng.success("重置成功!"); |
| | | TCompetition.table.refresh(); |
| | | }, function (data) { |
| | | Feng.error("重置失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | ajax.set("id",id); |
| | | ajax.start(); |
| | |
| | | import com.dsh.other.entity.*; |
| | | import com.dsh.other.feignclient.model.*; |
| | | import com.dsh.other.model.*; |
| | | import com.dsh.other.model.dto.siteDto.StoreInfoDto; |
| | | import com.dsh.other.service.*; |
| | | import com.dsh.other.util.GDMapGeocodingUtil; |
| | | import com.dsh.other.util.ResultUtil; |
| | |
| | | @Autowired |
| | | private TBackRecordService backRecordService; |
| | | |
| | | /** |
| | | * 获取根据门店id 获取店长信息 |
| | | */ |
| | | @RequestMapping(value = "/getStoreInfo") |
| | | public StoreInfoDto getStoreInfo(@RequestBody Integer id){ |
| | | |
| | | return storeService.getStoreInfo(id); |
| | | } |
| | | /** |
| | | * 根据城市管理员id获取门店 |
| | | */ |
| | |
| | | import com.dsh.other.entity.Store; |
| | | import com.dsh.other.model.BaseVo; |
| | | import com.dsh.other.model.ProvinceAndCityVo; |
| | | import com.dsh.other.model.dto.siteDto.StoreInfoDto; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import org.aspectj.lang.annotation.DeclareParents; |
| | | |
| | |
| | | List<Map<String, Object>> game(@Param("appUserId") Integer appUserId); |
| | | |
| | | OperatorUser queryByStoreId(@Param("id") Integer id); |
| | | |
| | | StoreInfoDto getStoreInfo(@Param("id") Integer id); |
| | | |
| | | } |
New file |
| | |
| | | package com.dsh.other.model.dto.siteDto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class StoreInfoDto { |
| | | String info; |
| | | } |
| | |
| | | import com.dsh.other.entity.Store; |
| | | import com.dsh.other.model.BaseVo; |
| | | import com.dsh.other.model.ProvinceAndCityVo; |
| | | import com.dsh.other.model.dto.siteDto.StoreInfoDto; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | List<Map<String, Object>> game(Integer appUserId); |
| | | |
| | | OperatorUser queryByStoreId(Integer id); |
| | | |
| | | StoreInfoDto getStoreInfo(Integer id); |
| | | |
| | | } |
| | |
| | | import com.dsh.other.mapper.StoreMapper; |
| | | import com.dsh.other.model.BaseVo; |
| | | import com.dsh.other.model.ProvinceAndCityVo; |
| | | import com.dsh.other.model.dto.siteDto.StoreInfoDto; |
| | | import com.dsh.other.service.StoreService; |
| | | import com.dsh.other.util.GDMapGeocodingUtil; |
| | | import com.dsh.other.util.ToolUtil; |
| | |
| | | return this.baseMapper.queryByStoreId(id); |
| | | } |
| | | |
| | | @Override |
| | | public StoreInfoDto getStoreInfo(Integer id) { |
| | | return this.baseMapper.getStoreInfo(id); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取列表数据 |
| | |
| | | |
| | | |
| | | </select> |
| | | <select id="getStoreInfo" resultType="com.dsh.other.model.dto.siteDto.StoreInfoDto"> |
| | | select CONCAT(t2.name,"-",t2.phone) as info |
| | | from sys_user t2 |
| | | where id = #{id} |
| | | </select> |
| | | </mapper> |