private void saveData() { for (RetailMember retailMember : list) { if (retailMember.getFullName() != null && retailMember.getMemberSex() != null && retailMember.getBirthday() != null && retailMember.getMobile() != null && retailMember.getTotalPoints() != null && retailMember.getCardPoints() != null) { // 检查手机号是否已经用过 boolean b = retailMemberService.existsByRetailShopIdAndMobileAndDataFlag(retailShopId, retailMember.getMobile()); if (!b) { retailMember.setRetailShopId(retailShopId); retailMember.setDataFlag(0); retailMember.setCardStatus(0); retailMember.setCardOpenDate(new Date()); Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, expirationDays); retailMember.setCardValidateDate(calendar.getTime()); retailMember.setCardGradeId(0L); retailMember.setCardPoints(retailMember.getCardPoints()); retailMember.setTotalConsumption(BigDecimal.ZERO); retailMember.setTotalPoints(retailMember.getTotalPoints()); RetailMember save = retailMemberService.save(retailMember); messageInfoService.generateMsg(retailShopId, retailShopStaffId, MessageTypeEnum.NOTICE.getStatus(), save.getFullName() + "会员导入成功", save.getFullName() + "会员导入成功,", MessageBusinessTypeEnum.MEMBER_UPLOAD.getStatus(), save.getMemberId()); } } } }
时间: 2024-02-14 10:19:42 浏览: 102
这段代码是一个方法,名为 `saveData()`,其中包含了一些操作。首先,它会遍历名为 `list` 的列表中的每一个 `RetailMember` 对象。然后,它会检查该对象的 `fullName`、`memberSex`、`birthday`、`mobile`、`totalPoints` 和 `cardPoints` 属性是否都不为 `null`。如果都不为 `null`,则会检查该对象的 `mobile` 属性是否已经在数据库中存在。如果不存在,就会设置该对象的一些属性,如 `retailShopId`、`dataFlag`、`cardStatus`、`cardOpenDate`、`cardValidateDate`、`cardGradeId`、`cardPoints`、`totalConsumption` 和 `totalPoints` 等。最后,它会将该对象保存到数据库中,并生成一条消息记录。
需要注意的是,该方法是基于某个具体业务场景编写的,如果您需要使用该方法,可能需要对其中的一些具体操作进行修改。
相关问题
function Person(firstName, lastName) { this.firstName = firstName; this.lastName = lastName; } const member = new Person("Lydia", "Hallie"); Person.getFullName = function () { return `${this.firstName} ${this.lastName}`; } console.log(member.getFullName());
这段代码会抛出一个 TypeError 错误。因为 Person.getFullName 是在构造函数之外定义的,而在 JavaScript 中,只有在构造函数内部定义的属性和方法才会被添加到实例上。因此,调用 member.getFullName() 会抛出 TypeError 错误,因为 getFullName 方法并不存在于 member 实例中。要解决这个问题,可以将 getFullName 方法定义为 Person 构造函数的原型方法,如下所示:
```
function Person(firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
Person.prototype.getFullName = function () {
return `${this.firstName} ${this.lastName}`;
}
const member = new Person("Lydia", "Hallie");
console.log(member.getFullName()); // "Lydia Hallie"
```
function Parent(name){ this.name = [name] } Parent.prototype.getFullName = function(){ let [name1,...name2] = this.name.join(",").split("") return name1 + "·" + name2 } function Child(){ Parent.call(this,"纳西妲") } Child.prototype = new Parent() Child.prototype.constructor = Child let child1 = new Child() let child2 = new Child()请解释一下这些代码
这段代码定义了一个 `Parent` 构造函数和一个 `Child` 构造函数。`Parent` 函数接受一个 `name` 参数,它会将 `name` 存储在实例对象的 `name` 属性中。`Parent` 函数还定义了一个 `getFullName` 方法,该方法会将 `name` 属性的值拆分成两部分,并在它们之间添加一个中点字符 "·",最终返回完整的姓名。
`Child` 函数通过 `Parent.call(this, "纳西妲")` 调用了 `Parent` 函数,并将 `this` 上下文设置为当前的 `Child` 实例。这样就可以在 `Child` 对象上创建一个 `name` 属性,其值为 "纳西妲"。
接下来,`Child` 函数重写了 `Parent.prototype` 对象,将其设置为一个新的 `Parent` 实例。这样,`Child` 实例就可以访问 `Parent` 的原型方法和属性。在这里,我们将 `Child` 的 `constructor` 属性设置为 `Child`,以确保正确地指向 `Child` 函数本身。
最后,我们创建了两个 `Child` 实例 `child1` 和 `child2`,它们都继承了 `Parent` 的属性和方法。
阅读全文